如何限制从命令行推送到特定分支



我是一名为特定回购做出贡献的开发人员。我们被指示永远不要推到branch1。我不想被误推到那个树枝上。有没有办法做到这一点(可能通过一些配置文件或其他什么(?

这只是解决问题的方法。

您可以在本地删除分支git branch -d <branch1>,并在出于某种原因需要时将其删除回git checkout <branch1>

此外,你可以阅读这篇文章:如何限制访问git 上的主分支

正如@matt在评论中所说,wrt GitHub可以创建分支保护规则来声明(例如(需要PR推送到这个分支-我认为这是你的模式。

这并没有停止的是,在某些情况下,您意外地在本地更改了branch1,从这个新branch1创建的任何新分支都将包含这些提交。你可以很高兴地将这些更改推送到github(它在一个分支上(,并与它们一起创建PR。

现在,这是否是一个问题取决于你是否真的打算包括这些更改(只是先把它们放在branch1上(——也许意外的推送完全是另一个更改。假设正在进行公关审查,你会认为公关审查员会选择不相关的东西:(

根据我的经验,在一个纪律严明、经验丰富的团队中,上述情况很少发生,通常不值得担心。更有可能的是,缺乏经验的团队成员经常从旧版本的主/主等分支,这通常会有更大的问题,因为他们的更改将过时。

如果你真的对此感到担忧,我建议你改变一下用法:不要在本地分支branch1,而是从origin/branch1分支。是的,你可以删除分支1本身。注意,您需要使用";git fetch";而不是";git pull";以确保起源分支(包括起源/分支1(是最新的。

最新更新