不放弃使用git-svn对svn所做的所有更改

时间:2019-04-11 02:23:52

标签: git svn git-svn

我有一个SVN存储库,已复制到PC中,并且一直在进行一些更改和提交。对于我解决的所有代码问题,我都会提交一次。如果我正在解决一个问题,则只需保存代码并将其保留在计算机上(直到我解决它,然后我才提交它)。我正在使用git svn

今天,我已经解决了三个问题(因此进行了3次提交),并且在解决另一个问题的过程中留下了代码。我想推送(dcommit)我在本地所做的所有提交。

问题是:我仍然有尚未提交的文件,当我尝试dcommit时,每个文件都会得到“需求更新”。

如何仅git svn dcommit git add对本地存储区所做的操作?我只想做git push的工作,并保持我所有未版本控制的文件/差异。

我知道这可能是不当行为,但我的工作流程随处可见。

1 个答案:

答案 0 :(得分:2)

首先,我认为您需要运行git svn fetch,以便能够看到其他开发人员在您尝试推送到的svn分支上正在做什么。然后,为了能够进行实际的工作来推动您的更改和内容,您将必须停止正在做的事情并清理工作树。为此,请运行git stash save。然后,您应该可以轻松地走动。现在,您应该基于svn分支的更新技巧,现在应该可以运行git svn dcommit来推送到svn。然后,您可以考虑弹出藏匿的东西,以便您可以继续工作git stash pop

修改:

  

Since git 2.16 git stash save 已被弃用,而赞成 git stash push 。它与“隐藏推送”的不同之处在于它不能采用路径规范,并且任何非选项参数都构成消息。