Featured image of post Git

Git

Config

设置 GitHub 代理

1
git config --global http.https://github.com.proxy socks5://127.0.0.1:1080

pull.rebase

1
git config --global pull.rebase true

Squash

1
git rebase -i <commit hash>

pick -> squash,只保留第一个 pick,其他的 squash

开发流程

每次新的开发都需要从 main 分支新建一个分支,测试通过后发起 Pull request,由其他成员进行 Code review,通过后合并到 main 分支。

非必要情况下,不要直接在 main 分支上进行开发。main 分支采取分支保护并需要线性历史,禁止直接 push,只能通过 Pull request 合并, 且至少需要一个成员的 Approval 才能合并。

[!NOTE]

当然不一定只能从 main 分支新建分支,也可以从其他分支新建分支,但是最终都要合并到 main 分支。

develop

  1. git switch -c <new-branch-name>
  2. Coding
  3. git add .
  4. git commit -m "commit message"
  5. git push [--set-upstream] origin <new-branch-name>
  6. 在 develop 分支上发起 Pull request
  7. Code review
  8. Create a merge commit 到 develop 分支

production

  1. 在 main 分支上发起 Pull request
  2. Code review
  3. Squash amd merge 到 main 分支1
  4. git switch main
  5. git fetch --prune
  6. git pull
  7. git branch -D <new-branch-name>2

  1. 可选删除被合并的分支(可以通过代码托管平台删除也可以通过 git push origin --delete <new-branch-name> 删除) ↩︎

  2. 如果已经在代码托管平台删除远程分支,这条命令不用执行 ↩︎

Licensed under CC BY-NC-SA 4.0