Git常用命令备忘

Posted 云中客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git常用命令备忘相关的知识,希望对你有一定的参考价值。

第一步,ssh key 创建与添加到Github

1,ssh-keygen

全部使用默认的:

-t 指定密钥类型,默认是 rsa ,可以省略。
-C 设置注释文字,比如邮箱,可以省略。
-f 指定密钥文件存储文件名。

git --version
git config --global user.name xiaobin.li
git config --global user.email xiaobin.li@XXXX.com

ssh-keygen -t rsa -b 2048 -C "xiaobin.li@XXXX.com"

2,提示你输入两次密码(该密码是你push文件的时候要输入的密码,而不是github管理者的密码)

你也可以不输入密码,直接按回车,那么push的时候就不需要输入密码,直接提交到github。

image

3,查看生成的SSH KEY

image

4,将id_rsa.pub的内容全部复制到GitHub的SSH Key里面。

image

 

第二步,启动SSH Agent进行密码缓存

如果不进行这一步,每次Clone,Pull,Push都将需要密码,相当麻烦。

1,启动SSH Agent

eval “$(ssh-agent)”

2,添加密钥

ssh-add

输入设置的密码就可以了

image

 

 代理设置:

git config --global http.proxy http://proxy.xxx.co.jp:8080
git config --global https.proxy http://proxy.xxx.co.jp:8080
git config --global url."https://".insteadOf git://

 

第三步,克隆GitHUb库

备注:使用SSH-KEY只能克隆添加了前一步生成的SSH Key的库。如果对GitHub上某个流行库感兴趣,可以先Follow然后就可以使用SSH Key克隆了。

image

image

 

第四步,修改文件并提交更新

1,查看待提交文件列表

git status

红色文字显示

2,添加提交对象文件

git add 文件名

git add –A

提交全部

3,查看添加对象情况

git status

绿色文字显示

image

移除某个文件的添加:

git reset HEAD 文件名

image

4,commit文件

git commit

弹出Vim编辑器(Linux文本编辑利器)编辑消息

 

 

image

 

按i键进入编辑状态,按Esc退出编辑回到View状态,

输入:wq  (保存退出)

image

 

image

5,push文件

git push

image

image

 

第五步,冲突解决

1,push的时候经常会遇到冲突,这个时候一般是先git pull拉取最新自动Merge,然后再次git push。

2,如果上述无法解决只能手动。

3,以服务端为基础合并,或者说舍弃本地版本。

git checkout - -theirs 文件名

4,以本地版本为基础合并,或者说舍弃服务端版本

git checkout - -ours 文件名

其他一:本地git库发布到远程库

一直在本地写代码,突然需要发布到远程库协调开发的时候

1,在github上创建一个新仓库

2,复制刚创建的项目git地址

3,本地仓库查看是不是有远程仓库信息,如果没有输出代表没有

git remote -v

4,添加关联的远程仓库地址

git remote add origin git地址

5,本地仓库还没有缓存的文件进行缓存

git add .

git commit -am "注释"

6,查看本地分支

git branch

7,拉取远程master分支代码(origin 可以取别的名字)

git pull origin master

8,将本地缓存仓库的文件推送到远程

git push -u origin master

其他二:添加.gitignore文件

在没有.gitignore的仓库添加此文件

.gitignore内容模板参照地址:https://github.com/github/gitignore

1,添加.gitignore文件

2,参照模板编辑.gitignore文件内容

3,清空本地缓存来反映.gitignore设置

git rm -r --cached .

4,添加修改(这个时候就会过滤文件)

git add .

5,进行commit,最后推送

其他三:强制覆盖本地文件

git fetch --all && git reset --hard origin/master && git pull

其他四:取消本地未push的commit

1,保持staged状态: git reset --soft HEAD~;

2,不保持staged状态: git reset HEAD~;

3,删除所有变更: git reset --hard HEAD~;

其他五:删除branch

// delete branch locally
git branch -d localBranchName

// delete branch remotely
git push origin --delete remoteBranchName

总结

目前暂时用到这么多了,后续如果有其他的再更新。如果是Excel文件之类的建议使用Teams进行管理,不要用Git,因为无法自动Merge。

以上是关于Git常用命令备忘的主要内容,如果未能解决你的问题,请参考以下文章

git常用命令备忘

git 常用命令记录 -- 快捷&备忘

Git常用命令备忘录

git tag的一些常用命令,记录以备忘git fetch origin tag

Git常用命令备忘

git常见命令