git 笔记
1、查询git的版本状况
gitbranch
2、分支创建与切换
gitcheckout-bdev
相当于gitbranchdev创建;gitcheckoutdev切换;
gitcheckout-torigin/git_doc;#其他开发人员基于origin/git_doc创建本地分支
2、分支删除
gitbranch-Ddev
3、当前分支的状态
gitstatus
4、分支提交代码
gitcommit-a-m'我提交的'
-a表示可以将那些没有通过gitadd标识的变化一并强行提交,但是不建议使用这种方式。
-m标识提交时的信息
5、分支合并
a.切换到主干gitcheckoutdev
b.从远程服务器获取新代码gitpull
b.合并分支gitmergedev
c.提交到远程服务器gitpush
6、内容冲突
例如a.java
<<<<<<<HEAD
thisistest//甲版本表示当前所在的主干或者分支
=======
Test//乙版本表示需要合并的主干或者分支
thisistestabd
>>>>>>>parentofbad75ce...devcommit
a.使用gitcheckout—oursa.java//保留甲的版本,抛弃乙的
b.使用gitcheckout—theirsa.java//保留乙的版本,抛弃甲的
7、文件恢复
a.查看git操作日志gitlg、gitlog、gitreflog
b.恢复到本地代码库的某一个commitidgitreset--hard5fb0f665fb0f66为本地提交的某一个版本
c.查看所有的HEAD历史gitreflog
d.恢复到远程服务器的master版本gitreset--hardorigin/master
8、后悔药
删除当前仓库内未受版本管理的文件:$gitclean-f
恢复仓库到上一次的提交状态:$gitreset--hard
回退所有内容到上一个版本:$gitresetHEAD^
回退a.py这个文件的版本到上一个版本:$gitresetHEAD^a.py
回退到某个版本:$gitreset057d
将本地的状态回退到和远程的一样:$gitreset–hardorigin/master
向前回退到第3个版本:$gitreset–softHEAD~3