2

在工作环境中,我们的版本控制是 Subversion,这不太可能改变。我想在本地使用 Git,主要是为了本地存储库的优势。

语境

基本 URL:http ://www.example.com/code (带有./trunk./branches./tags)。

使用 TortoiseGit,我能够指定要检查哪一个。我想在本地提供所有分支、标签和主干。这意味着,如果需要,我可以基于远程分支之一从本地分支合并回主分支。

我该如何正确地做到这一点?

在这个漫长的过程完成后,我尝试使用 TortoiseGit 的 'SVN Rebase' 重新定位到remotes /branches/EXAMPLE-BRANCH1,从. 失败了,说师父落后了。masterremotes/branch/test-branch

当我尝试从master基于 的本地分支转到时remotes/branch/test-branch,合并不起作用。

4

1 回答 1

0

要克隆您的存储库,包括具有标准布局的所有主干/分支/标签(正如您提到的那样):

git svn clone -s http://www.example.com/code new-repo-directory

注意:使用 git 不是灵丹妙药。您仍然需要解决合并/变基冲突。你可能会少得多,但它们不会完全消失。失败可能是准确的,表明您需要解决冲突,然后使用git rebase --continue.

我相信乌龟对很多事情都有很大的帮助。但是我已经多次被告知,如果你学会使用命令行(我相信我同意)并且只有在你了解他们在做什么之后才使用 GUI 助手作为工具,你将从 git 中获得更多场景。

PS -git svn rebase用于将 SVN 中所做的更改应用到当前 SVN 跟踪的分支之上。git checkout branch-to-update如果您尝试合并 2 个不同的 SVN 跟踪分支,那么您将要使用git rebase branch-with-updates(并解决任何冲突,然后git add the-conflicted-file直到git rebase --continue完成)。

于 2013-08-31T02:30:29.980 回答