【发布时间】:2018-02-05 11:33:38
【问题描述】:
我正在开发一个我拥有完全权限的 git 存储库。
我想暂时检查一下主分支,以便详细查看一些文件,以了解它们与我的功能分支有何不同。 (git diff 命令非常有用,但目前不适用于我的目的。)
我真的想避免意外写入主分支的可能性。
有没有一种简单的方法可以让我的本地版本的分支暂时只读,而不会为团队中的其他人冻结分支?
【问题讨论】:
-
如果你真的想确保不修改本地 master,你可以简单地做一个分离的 checkout (
git checkout --detach master)。这样,如果您提交某些内容,它就不会出现在任何分支上。但是,除非您推送提交,否则意外提交到本地 master 并不是真正的问题。如果您不小心提交到本地 master,您可以简单地通过git reset --hard origin/master将本地 master 分支的状态恢复为远程 master 分支的状态(请注意,这将永久丢弃您的工作树/索引中的任何未提交更改)。 -
值得思考:每一次提交都是只读的。这意味着只要您不remove 提交,向您的存储库添加提交根本不会触及任何现有历史记录。那么:如果你不小心写信给
master,你为什么会在意呢?所有的 old 提交仍然存在,就像它们一样。 (参见@Alderath 的评论。)
标签: git github version-control