1、仓库克隆:
git clone http:...(仓库地址) -b newbranch
2、把修改的添加到暂存区
git add .
3、提交
git commit
4、查看当前状态
git status
5、查看修改文件内容
git diff
git是用HEAD 来表示当前版本或分支的 HEAD^则表示上个版本,HEAD^^ 上上个版本,HEAD@{版本号},制定版本号
6、git fetch和pull
fetch拉去远程分支的全部内容(你上次克隆或fethc以来所有内容),但不合并
pull拉去远程分支的跟踪分支(即chechout的分支),并合并远程分支
7、git 把本地修改不想提交的文件隔离
//加入
git update-index --assume-unchanged {文件名(可参考git status时显示的路径)}
//取消
git update-index --no-assume-unchanged {文件名(可参考git status时显示的路径)}(但是发现一些问题,虽然在修改列表没了,但是做一些git操作时还是会显示'有修改未提交'的提示)
8、git rebase
git rebase 远程分支
//把branch_name合并到当前分支
9、git merge
git merge branch_name //把branch_name合并到当前分支
注:merge 和 rebase一样,都是把其他分支合并到当前分支,但其原理不一样:
git merge: 会把远程文件合并当前,只是文件的合并不会影响其HEAD和log
git rebase:会把HEAD前移,
例如:现在情况 ,从master checkout
A B C,而master 又有相应提交F、G、H
A---B---C topic / D---E---A'----F----G master
merage:命令后结果,两个分支文件合并,分支log不会改变
A---B---C
topic
/ \
D---E---A'----F---G---H(合并后的) master
rebase:命令后结果,两个分支文件合并,并且topic 在master上的HEAD也前移了A---B---C topic/
D---E---A'----F---G master
10、git reset 重置提交,把提交回滚到刚拉取得分支状态
git reset --soft develop
大招:遇到命令不懂,就直接 后面加 --help,会有大神来拯救