git - 我怎样才能阻止自己提交到 git 的 master 分支?

标签 git version-control ubuntu-11.04

我理想的工作流程是将更改提交到 dev 并且仅通过 git merge --no-ff dev 将更改 merge 到 master,但偶尔会发生以下情况:

在开发中

dev: git add .
dev: git commit -m "Cured cancer."
dev: git checkout master
master: git merge --no-ff dev

再写一些代码

master: git commit -a -m "Did something amazing"

哎呀,刚刚致力于掌握。如果幸运的话,我会立即意识到这一点,但如果没有,我可以将分支推到上游,并在顶部再进行 10 次更改。所以这最终在远程:

Master   -------- Merge --- commit - commit --------------- Merge
Dev      \ Commit/                        \ commit - commit /

虽然它应该是这样的:

Master   -------- Merge ------------- Merge --------------------- Merge
Dev      \ Commit/     \ commit commit /  \ commit - commit - commit /

我怎样才能消除人为因素(即我的愚蠢)并阻止自己提交到 master 分支?我在 Ubuntu 上。

最佳答案

这不是万无一失的解决方案,但您可以安装 git-completion.bash 并使用其 PS1 增强功能来显示当前分支(和其他有用的内容)作为命令提示符的一部分。参见 here寻求解释。

这不会阻止您提交给 master,但会让您很难忘记自己所在的分支。

关于git - 我怎样才能阻止自己提交到 git 的 master 分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7703345/

相关文章:

git - 使用 git diff 为部署创建文件列表的问题

git - 显示完整的文件,因为它们存在于 git 索引中

git - 将现有的 Visual Studio 2013 项目添加到 Git 源代码管理

c - 如何让程序在源代码管理中显示正确的版本号?

linux - 安装 NGiNX 时是否应该使用 root 以外的其他用户

mysql - 为什么MySql无法读取这个文件?

git - 无法访问 macos 上的 bitbucket 存储库

git - 自动保持次要 repo 与主要 repo 同步?

git - 我应该提交在 npm 包中发布的自动生成的文件吗

windows-7 - ubuntu CLI 的 vmware 窗口大小