Visual studio 如何在SVN+;中本地使用Git;Visual Studio环境

Visual studio 如何在SVN+;中本地使用Git;Visual Studio环境,visual-studio,svn,git,git-svn,Visual Studio,Svn,Git,Git Svn,我一直在家里玩git,我真的很喜欢本地提交的想法。能够提交较小的更改而不将可能损坏的代码传播给每个人是很好的,并且能够由于更频繁的提交而恢复较小的更改 我一直在读git svn命令,但我不确定我是否完全理解它是如何工作的。我们致力于VisualStudio2008项目,并运行VisualSVN,它在IDE中为我们处理文件重命名、移动以及所有这些 我想知道的是:我是否可以提交到本地git存储库,但也可以提交到远程SVN存储库?我希望在IDE中保持VisualSVN更改跟踪和提交,但也能够使用git

我一直在家里玩git,我真的很喜欢本地提交的想法。能够提交较小的更改而不将可能损坏的代码传播给每个人是很好的,并且能够由于更频繁的提交而恢复较小的更改

我一直在读git svn命令,但我不确定我是否完全理解它是如何工作的。我们致力于VisualStudio2008项目,并运行VisualSVN,它在IDE中为我们处理文件重命名、移动以及所有这些


我想知道的是:我是否可以提交到本地git存储库,但也可以提交到远程SVN存储库?我希望在IDE中保持VisualSVN更改跟踪和提交,但也能够使用git临时存储更改。他们可能会互相妨碍吗?

它工作得很好。去争取吧只是不要将你的.git文件夹签入svn

编辑:呃,当我这么做的时候,我不需要为git svn操心。我只是将svn的本地工作目录视为任何其他目录,并且我倾向于不太关心以前的svn历史。

我使用git svn从远程存储库中保持“更新”,但没有使用它提交到svn存储库,因此我无法帮到您

您所做的很简单,所有设置均为默认设置:

>git svn init <url......>
>git svn fetch
如果在事后使用git svn,可能会遇到一些问题。我的意思是:您已经使用svn签出了项目,然后您还在本地工作的svn目录中创建了一个git存储库。然后在上面使用git svn

我必须处理两个问题:

  • 行尾
    svn
    可能会将行尾转换为windows,而
    git svn
    则会将它们保留为unix样式。因此,由于行尾的差异,您可能会遇到大量冲突

    因此,可以肯定的是,使用工具将所有文件的行尾转换为unix(或windows,具体取决于svn repo中使用的行尾)

  • svn关键字扩展。e、 g.
    $Id$

    git svn
    不会扩展这些关键字,而
    svn
    会。所以你也会有冲突。同样,使用工具(或编写脚本)将
    $Id..crap..$
    的所有实例转换为$Id$`


  • 酷,我有点想把以前的SVn历史记录放到git中,但它不是一个交易破坏者。
    >git merge git-svn