参考: https://blog.csdn.net/Mr_YanYan/article/details/80049306
参考: https://www.open-open.com/lib/view/open1476069597550.html (很好的一篇博文)

1、从一个分支中创建一个新的分支
2、撤销本地add
3、删除分支
4、git stash 把更改进行隐藏
5、撤销本地commit
6、撤销远程提交
7、追加一个提交到远程
8、撤销某个文件的修改
9、树型查看commit log
10、合并不同分支的commit
11、查看commit的内容
12、gitlab提交内容太多网页无法显示

1、从一个分支中创建一个新的分支

切换到已经有的远程分支   git checkout master_RetStatus
拉取远程分支最新的代码   git pull 

如果目前处于master分支
创建一个新的本地分支    git checkout -b master_new
这样会从master当前代码状态分出一个分支来

2、撤销本地add

git add . 表示添加当前工作目录的所有文件,会不小心添加多余的文件

git status 先看一下add的文件
git reset HEAD 就是把上一次add的文件全部撤销
git reset HEAD cnstream/module/display/display.hpp 就是对某个文件进行撤销

3、删除分支

删除远程分支   git push origin --delete [branch_name]
删除本地分支   git branch -d [branch_name]

4、git stash 把更改进行隐藏

git add          把改动文件添加
git stash        把缓存进行隐藏
git stash list   查看stash的状态
git stash pop    恢复之前缓存的工作目录

https://www.cnblogs.com/tocy/p/git-stash-reference.html
master合并到开发分支 https://blog.csdn.net/wl_public/article/details/89886990

5、撤销本地commit

git reset HEAD~           撤销本地提交,保留修改内容到add之前
git reset --soft HEAD~    撤销本地提交,保留修改内容到add
git reset --hard HEAD~    慎用,撤销本地提交,不保留内容

如果销毁了内容后又想恢复:
1、 git reflog 查看你刚刚销毁提交的记录及其哈希值
2、 git co -b fix/recover-commit-remove-before 7144f51   将提交记录保存到 fix/recover-commit-remove-before 分支,并且转到该分支

6、撤销远程提交

撤销本地之后要撤销远程的提交。比如提交之前是4状态,提交远程后为5状态,需要保证本地是4的状态。
git push -f origin youbranch

7、追加一个提交到远程

1、最新的一个提交为commit 5
2、改动了一些文件但是不想多一条commit信息
 git add youfile
 git commit --amend --no-edit     // --no-edit为不跳出显示编辑器提示
 git push -f origin youbranch     // 注意远程的最新提交为commit 5,这里提交之后把原来的commit 5覆盖了

8、撤销某个文件的修改

修改某个文件后,没有进行git add,此时又想退回修改前。
git checkout youfile.txt
注意要加文件名

9、树型查看commit log

git log --oneline --graph --decorate --all // 显示所有的分支

git log --oneline --graph --decorate  branchA branchB branchC branchD  // 显示 abcd 四个分支的关系

10、合并不同分支的commit

查看需要合入的分支2的commit id,需要把idA到idB合入分支1
切到需要合并的分支1
git cherry-pick commit-idA .. commit-idB

产生冲突后,解决冲突并且add
git cherry-pick --continue

忽略之后产生的信息

11、查看commit的内容

git show commit_id

12、gitlab提交内容太多网页无法显示

1、在本地 tig 查看
2、j /k / q /enter 分别是上翻、下翻、退出、进入
posted on 2020-08-20 20:18  wulc++  阅读(136)  评论(0)    收藏  举报