0%

git 复杂流程 2020

git

参考

资源

复杂流程

常规开发步骤

  1. clone 远程分支

    1
    git clone uri
  2. 阅读 README.md 文档, 确保项目可运行并通过测试

  3. 新建并切换到本地开发分支

    1
    git checkout -b DEV_doublethink
  4. 添加新功能后,确保项目可运行并通过测试

  5. (add 工作目录(working directory)中的已修改文件(modified file)到暂存区(staging area)): 暂存文件差异(stage fixes)
    commit 暂存区(staging area)到本地 git 仓库(.git repository)

    1
    2
    git add .
    git commit -m "tpye(scope): subject"
  6. 创建远程(仓库)分支并提交本地(仓库)分支到远程(仓库)分支

    1
    git push origin DEV_doublethink:DEV_doublethink
  7. 在 git web 页面中提交 mr,等待 mr

  8. mr 完成后切换到本地 master 分支并拉取远程 master 分支最新代码

    1
    2
    git checkout master
    git pull --rebase
  9. 切换到本地开发分支 DEV_doublethink, rebase 本地 master 分支

    1
    2
    git checkout DEV_doublethink
    git rebase master
  10. 删除远程 DEV_doublethink 分支

    1
    git push origin -d DEV_doublethink
  11. 回到第 4 步.

追加修改到上一次的 commit

  1. 先修改需要修改的文件

  2. git add . 暂存修改到暂存区

  3. git commit --amend --no-edit 将暂存区文件追加到上一次 commit

  4. 继续 git push 推送即可

如果只是想修改 commit 注释, git commit --amend 可以进入 vim 编辑模式编辑上次 commit 注释.

撤销 commit

不删除工作空间改动代码,撤销 commit,并且撤销 git add .

  1. git reset --mixed HEAD^
    这个为默认参数, git reset –mixed HEAD^ 和 git reset HEAD^ 效果是一样的。

HEAD^ 的意思是上一个版本,也可以写成 HEAD1
如果你进行了 2 次 commit,想都撤回,可以使用 HEAD
2

不删除工作空间改动代码,也不撤销 git add .
2. git reset --soft HEAD^

删除工作空间改动代码,撤销 commit,撤销 git add .
3. git reset --hard HEAD^

git 补丁的生成与应用

参考: https://www.jianshu.com/p/e5d801b936b6

如何在 Git 里撤销(几乎)任何操作

参考: https://www.cnblogs.com/allencelee/p/5603914.html