在最后一次提交之后,我在工作副本中修改了一堆文件,但我想撤消对其中一个文件的更改,就像将其重置为与最近提交的状态相同.
但是,我只想撤消单独一个文件的工作副本更改,而不是其它任何内容.
我怎么做?
我在脚本中进行了更改并提交了它.然后我做了一些其他更改,并将它们推送到远程存储库等.
然后我意识到我提到的第一个更改是愚蠢的,并且想要撤消它.我可以"取消应用"提交,而无需手动复制/粘贴差异吗?
举个例子:我有两个文件,a.py并且b.py:
Commit 1:
I delete a function in a.py
Commit 2:
I change a few lines in b.py
Commit 3:
I change the docstring in a.py
Run Code Online (Sandbox Code Playgroud)
我可以撤消该功能删除,并使其显示为"提交4"(而不是删除提交1)
我的开发团队已经使用颠覆工作了很长一段时间.管理主干和分支的方式如下:
我们(几乎)总是从行李箱中释放出来
每个版本都有自己的分支.
当一个版本准备好QA时,我们将分支合并回主干并为下一个版本创建一个新分支.
开发人员可以使用主干或分支,但是没有特定于开发人员的分支.
最近,我们有一些噩梦合并会议,部分是由于应用程序的一些重大变化.这些并不总是顺利进行,并且在QA期间有时弹出问题,其中颠覆并没有完全合并.
一种解决方案可能是定期将主干更改合并到发布分支中,例如每周一次,以确保最新的主干更改位于分支中.然后可以更接近实时地修复冲突.
您对此问题的体验是什么?有标准的最佳做法吗?此外,你有一个很好的方法来跟踪哪些修订已合并到分支(subversion中的体面评论可能会处理).