绑定/更换本地git用户
如果只有一个账户,直接通过
查看当前git用户名:
git config user.name
查看当前git邮箱:
git config user.email
切换git用户名:
git config --global user.name "YOURUSERNAME"
切换git邮箱:
git config --global user.email "YOUREMAIL"
切换本地git基本配置之后,绑定token,邮箱绑定到本地的git账户,一直回车生成一个默认的key
ssh-keygen -t rsa -C “xxxxxxx@qq.com”
结果
将这个key绑定到git
这里的是用ssh,这个码在本地用户目录下的.ssh/id_rsa.pub,直接输入进行绑定就ok
项目的绑定
1,直接github创建一个仓库,然后:
官方给出三个方法(项目目录下终端输入)
官方的有时候很好用,根据自己的情况进行调整就行
本地没有仓库,进行仓库初始化并绑定远程仓库
本地创建一个README.md文件
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/xxx/xx.git
git push -u origin main
push我这里遇到很多坑最常见的是选择分支(main是主分支,master是次主分支)
所以push的时候可以加一个 -f (强制执行的指令)
# push即推送到云git
git push -u origin main -f
当然,国外的github最容易出现的一个问题是:time out即超时,因为是国外的网站,我折腾了很久最后发现国内的gitee更加好用,步骤一样但是不会出现time out,毕竟到了最后一步,卡着了属实难受
本地初始化过,已经有仓库的情况
直接远程绑定
git remote add origin https://github.com/xxx/xx.git
git branch -M main
git push -u origin main
直接云端操作
2,本地创建项目
项目目录下终端输入如下:
git init
git add README.md
git commit -m "first commit"
git push -u origin main
3,使用idea或者pycharm等第三方
github遇到很多问题,还是gitee更好用
相对无脑操作,就是根据自己的情况绑定项目后,三个箭头进行update,commit,push操作
版本切换
git status # 查看项目状态
git reflog # 查看日志(每次的提交commit和其版本码)
git reset --hard 7ee5c95(码) # 切换版本
GIt配置(部分补充)
系统配置
本地git下的etc下面的gitconfig
用户配置
c盘系统目录下,在有了用户配置后会有一个.gitconfig文件
仓库建立
add+commit+push+(chekeout)+(fetch/clone)
1. 本地仓库
git目录打开git bash,输入
git init
2. 克隆到本地
git clone https://gitee.com/xxx/xx.git
3. GIT文件操作
-
untracked:未跟踪
-
Unmodify:已经入库,未修改
-
Modified:已修改,无其他操作
-
Staged:暂存状态
查看文件状态
#查看文件状态 git status [filename] #查看所有文件状态 git status #提交所有未文件到暂存区 git add . git commit -m
忽略文件
不需要提交的文件
#为注释 *.txt #忽略所有.txt结尾的文件 !lib.txt #但lib.txt除外 /temp #temp目录下的全部忽略(仅执行根目录下的执行文件,不包含其他的temp) build/ #忽略build/目录下的所有文件 doc/*.txt#会忽略doc/notres.txt 但不包括doc/server/arch.txt
生成公钥
ssh-keygen -t rsa
生成后产生.ssh,把这个信息放到码云ssh密钥处生成一个密钥
然后使用码云新建一个仓库
复制进我们已经生成好的本地git命令(记得赋值的时候直接ssh不要https,不然要密码)
然后可以右上角,也可以命令直接更新,.gitxx是过滤文件
命令三件套就是,git add . ;git commit -m ‘名字’ ;git push;
4. git分支命令
多个分支如果并行执行,就会导致我们代码不冲突,也就是存在多个版本
如果冲突,就协商保留谁的代码
== master主分支非常稳定,一般不允许在上面工作,新建分支,工作完成后,再合并 ==