【发布时间】:2014-10-11 02:11:37
【问题描述】:
这是this previous question 的后续行动。 所以你可以在那里找到我到目前为止所做的事情。
简而言之,我创建了一个新的git 分支,该分支从一个已提交到远程svn 存储库的分支分支。
这个新的git 分支只能在本地使用,永远不会与svn 同步。
虽然我可以按照this answer 中的说明确保此手动操作,但新的git 分支“记住”它的svn 来源:
$ git svn info
Path: .
URL: [path-to-host]/[svn-repo]/trunk
Repository Root: [path-to-host]/[svn-repo]
Repository UUID: [repository-uuid]
Revision: [revision]
Node Kind: directory
Schedule: normal
Last Changed Author: sg-lecram
Last Changed Rev: [revision]
Last Changed Date: [date]
假设如果我签出新的git 分支并将一些更改提交到本地git,我可以运行git svn dcommit 将更改发送到svn。虽然我不打算这样做,但只需要一瞬间忘记我在哪个分支上发布秘密 git 分支中的所有秘密更改。
我希望能够从 svn 取消链接新的 git 分支,以便尝试从该分支执行 dcommit 会导致错误。
我该怎么做?
【问题讨论】:
-
不是 git 解决方案,但在 mercurial 中,您可以将分支标记为处于秘密阶段 - 然后它不会被推送 - 您会考虑切换到 hg 吗?
-
@SteveBarnes 因为我已经在
git中有历史记录 + 我仍然需要与svn同步 + 我以前从未使用过hg,我想避免这种情况。但很高兴知道,我可能会在下一个项目中尝试一下。 -
我想你会感到惊喜的。
标签: git svn git-svn git-branch