Git的使用

本文为学习Git教程后的个人小结,比较简洁,适合有一定Git基础的人;如果想要从0开始学Git,本人强烈推荐廖雪峰老师的教程,教程请阅读  Git教程

如有问题及意见,敬请提出。

Git基础命令相关

1.初始化本地仓库:git init

2.查看仓库状态:git status

3.将修改后的某文件预添加到仓库:git add xx.py

4.将修改后的所有文件预添加到仓库:git add .

5.将预添加区域的所有文件添加到仓库:git commit -m "关于提交内容阐述"

 

Git版本相关

1.查看提交(版本)记录和版本号:git log

2.查看所有版本记录(包括回退的):git reflog

3.版本回退:git reset --hard 版本号

4.修改文件后,没有保存到缓存区,不想保存也懒得再删,直接回到原版本:git checkout -- xxx文件

5.修改文件并git add 到缓存区后,不想要上次的修改了,回到修改前的版本:

先git reset HEAD xxx文件 回到add之前的状态,再 git checkout -- xxx文件。

6.对比工作区和某个版本某文件的不同:git diff HEAD -- xxx文件。其中,--表示HEAD中的文件,++表示工作区文件。

7.对比当前版本和某个版本之间的不同:git diff HEAD HEAD^ -- xxx文件。HEAD^表示版本号,可替换;--表示前面版本里的文件,++表示后面版本里的文件,顺序不同,-+对应不同;

8.已经保存至缓存区了,在工作区删除一个文件后想要恢复:git checkout -- xxx文件;

9.已经保存至缓存区了,在工作区删除一个文件后,想要在版本区中也删除:git rm xxx文件,就会将删除保存在缓存区了,可以使用第5步取消删除,可以使用commit提交删除;

 

Git下线相关

1.开发某个新功能,开发到一半,原来的某个功能出问题了,需要下线:停止现在开发的功能,下线出问题的功能:git stash;(将正在开发的代码存在一个地方,避免波及)下线出问题功能,提交;git stash pop;(将正在开发的代码从那个地方拿出来,继续开发);

git stash;--->修改--->git add .;--->git commit -m 'xxx';--->出现冲突:自动合并/手动解决;

 

Git分支相关

1..在当前分支上创建分支:git branch 分支名  eg: git branch dev

2.查看分支:git branch 

3.切换到某分支:git checkout 分支名   eg: git checkout dev

4.切换到master后合并二级分支:git merge 二级分支名   eg: git merge dev

5.删除分支:git branch -d 分支名   eg: git branch -d dev

6.自己本地,dev分支添加一行代码,commit了,切换到master分支同一个文件添加一行代码,commit了,这个时候 git merge dev会报错合并冲突:打开冲突文件,手动合并解决,再add该文件,commit;

7.保存/隐藏开发现场:git stash;查看开发现场:git stash list;切换回继续开发:git stash pop;

8.出现bug:首先保存工作现场,再切换到bug所在分支,创建一个临时分支,解决bug后与bug分支合并,合并使用no-ff保存临时分支记录,删除临时分支,切换到工作分支,回到工作现场;

 

Git推送GitHub相关

1.将本地代码推送到GitHub上已创建的仓库:1.git remote add origin https://github.com/username/xxx.git --->2.将本地代码进行commit和它之前的步骤--->3.git push origin master

2.将GitHub上代码克隆到本地并进行编写:1.git clone https://github.com/username/xxx.git ---> 2.进入文件夹 ---> 3.默认只下载master分支,先创建并切换dev分支,git pull origin dev;

注意:git pull origin dev; == git fetch origin dev;+ git merge origin/dev;

 

Git协同开发相关

1.保持分支整洁:git fetch origin dev + git rebase origin/dev

在公司开发了一部分代码,保存了但没有推送远程库,回家开发另外一部分代码,保存并推送,第二天回公司直接git pull origin dev的话会出现分叉,这个时候就可以用git fetch origin dev + git rebase origin/dev 来保持代码的整洁性;

2.协同开发:开发的每个人都应有一个分支,比如yifchan,lwkun;两个人提交分支,后提交分支的那个,要先pull,才能继续合并;

 

Git其他

1.发现开源项目bug之后:先fork到自己仓库,pull到本地,进行修改,push到自己仓库,然后pull request 提意见,给开源项目负责人审核;

2.避免重复输入密码:1.相当于url自带账户名和密码。2.用ssh方法,生成公钥后放到GitHub上面去;

3.推送代码时忽略文件:1. vim -gitignore,在文件中写忽略哪些文件,就可以了。2.在创建仓库时在readme处选中python ignore;通过tag创建版本;

 

创建github仓库时注意事项

1.创建的仓库最好是英文;

2.可以在github上创建分支,再pull下来;也可以在本地建立的分支,再push推送到github上。

3.将仓库克隆到本地之后,要先创建一个test文件,然后git add .; git commit -m 'init repositrry';然后才能'实例化'master,创建其他分支。

 

推送本地项目到github/codealiyun

1.git init

2.git remote add origin https://github.com/username/xxx.git

3.git pull origin master

4.git add .

5.git commit -m "xxx"

6.git push origin master

 

posted @ 2019-04-12 18:25  YifChan  阅读(621)  评论(0编辑  收藏  举报