如何保护本地主分支不被重新定位?

时间:2016-05-11 07:42:53

标签: git git-branch rebase git-config

我想保护特定的本地分支(例如master)不会被意外重新定位。我知道如何在服务器端执行此操作。 Bitbucket的配置如屏幕截图所示。

Prevent history rewrite

如何保护本地分支机构(例如master)不被重新定位...?

$ git rebase feature master

2 个答案:

答案 0 :(得分:3)

执行以下步骤:

  • 使用以下命令将特定设置添加到git config列表:git config branch.master.rebaselock true(以及master可以是任何其他分支)
  • 使用Uasi的pre-rebase git hook:https://gist.github.com/uasi/9384329

答案 1 :(得分:2)

pre-rebase钩子就是你所追求的。

来自https://git-scm.com/docs/githooks的引用:

  

pre-rebase

     

此挂钩由git rebase调用,可用于防止分支被重新绑定。可以用一个或两个参数调用钩子。第一个参数是分支系列的上游。第二个参数是重新分配的分支,在重新定位当前分支时不会设置。