我们将介绍从问题分配到合并的流程。
细节可能因项目而异,但我认为总体上没问题。

流动

  1. 创建新分支
  2. 工作和承诺
  3. 引入最新的主分支
  4. 推送到远程分支
  5. 组织工作分支
  6. 创建拉取请求
  7. 获得审核
  8. 提交反映审查内容的提交
  9. 重新审核更改
  10. 组织工作分支
  11. 合并和删除远程分支

    我试着写出来,但是写的很多,所以我要补充一下。

    创建一个新分支

    在创建分支之前,始终拉入最新的远程存储库信息。
    如果你不这样做,你最终可能会从旧的提交中删除一个分支。

    $ git fetch
    

    创建一个分支。
    确保创建一个新分支。
    (不要重用和提交合并的分支)

    $ git switch -c topic-123 origin/main
    

    origin/main 创建分支名称topic-123
    origin/main 将从最新提交创建一个分支,而无需更新本地 main 分支。
    另外,如果您不指定,则会从当前分支创建一个新分支,因此如果您养成指定origin/main 的习惯,则可以防止它从意外分支创建。

    分支名称的命名规则取决于项目,所以请与项目匹配。
    根据您安装的任务管理工具,有一些在任务编号包含在分支中时会自动链接,因此最好使用与该工具匹配的命名规则。

    工作和承诺

    正常工作并提交。
    没有特别的补充。

    $ git add .
    $ git commit
    

    git commit 的有用选项

    这里想介绍一个方便的git commit选项,因为不加就觉得自己很懒。

    $ git commit -m "A 機能を実装しました"
    

    使用-m 选项,您可以在不启动编辑器的情况下提交。

    $ git commit --amend
    

    --amend 您可以更改最后一次提交。
    由 git add 索引(暂存)的更改反映在上一次提交中。
    您还可以更改提交消息。

    $ git commit --amend --no-edit
    

    如果您不需要更改提交消息,请添加 --no-edit 选项。

    组织工作分支

    有多个提交具有相同的消息,并且不会留下诸如通过试错进行的 wip 之类的工作提交。
    这是为了避免在主分支中包含混乱的提交。 (以后维护的人就麻烦了)

    $ git rebase -i origin/main
    

    介绍git rebase 的易于理解的网站。
    https://www.atlassian.com/ja/git/tutorials/rewriting-history/git-rebase

    * 我可能会在另一篇文章中介绍 git rebase。

    将最新的主分支拉入您的工作分支

    随着团队的发展,主分支会越来越更新,而工作分支也会变得过时。随着年龄的增长,可能会发生大量的冲突,因此建议经常服用。

    此外,在发出拉取请求之前,我们这样做是为了确保没有冲突。

    $ git stash -u
    

    如果您有一个正在进行的文件,请将其存储到临时保存或提交中。
    如果您添加 -u 选项,它将隐藏包括未跟踪的文件。

    $ git fetch
    

    获取最新的远程分支信息。

    $ git rebase origin/main
    

    如果您在此过程中遇到任何冲突,请打开编辑器并解决冲突。

    $ git add .
    $ git rebase --continue
    

    如果你在路上迷路了,请用git rebase --abort重新开始。

    $ git stash pop
    

    获取临时保存在存储中的更改。

    推送到远程分支

    $ git push -u origin HEAD
    

    @ 987654346 如果附加一个选项,onlygit push@ only with@ 987654347 会改进。

    $ git config --global push.default current
    

    如果您设置了此选项,git push 就足够了。

    $ git push
    

    创建拉取请求

    打开 GitHub 并创建一个拉取请求。

    得到评论

    获得前辈的好评

    Git ブランチ作成からマージされるまでの流れ

    做出反映审查内容的提交

    $ git add .
    $ git commit -m "レビュー内容の反映"
    $ git push
    

    重复直到审核通过?

    组织工作分支

    审查试错提交以通过审查,并采取最新的作为主要分支在审查期间可能已经取得进展。

    $ git rebase -i origin/main
    $ git rebase origin/main
    $ git push -f
    
    • git rebase 更改提交哈希值。 (需要强制推动)
    • 强制推送git push -f 分支。您只能强制推送您个人使用的分支。
    • 如果您强制推送到一个多人工作的分支,请始终要求确认或不要一开始就这样做。

    合并和删除远程和本地分支

    按 GitHub 上的合并按钮。
    届时,请同时指定删除远程分支的选项。
    远程分支的累积可能很丑陋,并且会减慢 git fetch。

    $ git fetch -p
    

    添加-p 也将反映已删除的远程分支。

    $ git branch -d topic-123
    

    删除本地分支。

    删除合并的分支,因为它不会再次使用。
    留下旧的分支并重新使用它们将花费你合并和解决冲突以赶上最新的。

    未使用的命令

    $ git checkout
    $ git pull
    $ git merge
    

    使用git rebase还是git merge取决于项目的运行规则。
    我个人推荐git rebase,因为提交日志会很干净。

    相关文章


原创声明:本文系作者授权爱码网发表,未经许可,不得转载;

原文地址:https://www.likecs.com/show-308628118.html

技术点:

Git

相关文章: