括号表示可选项
序号 | 操作 | 指令 | 含义 |
1 |
分支合并 |
git cherry-pick hashValue |
将其它分支的某一次提交合并到当前分支 这里的hashValue是其它分支的某一次提交 |
2 |
查看修改的文件 |
git diff vesion1 vesion2 (文件/正则表达式) | 对比两个版本之间的差异,会将所有差异细节以文本形式打印出来,其后也可以指定文件,支持简单的正则匹配 |
git diff vesion1 vesion2 --stat | 后跟--stat只会将有差异的文件名列出,不会列出差异细节 | ||
3 | 多人协作合仓 |
步骤: 0. git reset HEAD~i ; 如果本地修改已提交,需要先恢复到未提交状态,如果未提交,则从步骤1开发 1. git stash #先暂存本地的修改,使本地代码与服务端某一版本一致,保证更新服务端最新代码时不存在冲突 2. git pull 远程仓 # 更新远程仓,使本地仓与服务端最新提交一致 3. git stash pop # 恢复本地修改,pop后提示冲突,手动修改冲突后add commit即可 4. git add 冲突文件 5. git commit -m "提交记录" |
如果不想重新写提交说明: 1. git checkout -b master.merge; 新拉一个分支 2. 执行上面步骤1~4 3. git commit --reuse-message=master; 使用master分支的记录进行提交 4. git checkout master; 切回master分支 5. git stash **; 暂存版本到上次服务最新状态 6. git merge master.merge;合并刚才操作的分支即可 |
4 | 本地master修改提交后,想恢复至远端最新版本 |
git fetch --all git reset --hard origin/master | |
5 |
合并log提交注释 |
git rebase -i HEAD~cout 或 git rebase -i 版本号 | |
6 |
查看远程仓地址 | git remote -v | |
7 | 查看所有分支 | git branch -a | |
8 |
git pull 合并到本地后,想撤销 |
git reflog git reset --hard HEAD @{n} # 如 git reset --hard 055298a | |
9 |
提交后发现忘记了暂存某些需要的修改 |
git commit -m 'initial commit' git add forgotten_file git commit --amend | |
10 |
stash 专题 |
git stash push -m "暂存注释" 压入暂存,带注释 git stash list 列出所有暂存 git stash pop stash@{i} 回复某一暂存, 多次pop会合并文件 git stash clear 清空所有暂存 | |
11 |
只显示log内容 | git log -3 --pretty=format:" %s" #显示3条log,只显示注释信息 | |
12 |
根据关键字索引对应log | git diff --grep XXX | |
13 |
分支操作 |
git checkout -b newBranch git push origin newBranch git branch--set-upstream-to=origin/muscleape | |
14 |
忽略提交过的修改文件 |
git update-index --assume-unchanged <file> git update-index --no-assume-unchanged <files> | |