4


3

gitクライアントとSVNリポジトリを操作するための最良のツール/方法論

私は約2年間SVNを使用し(主にTortoiseSVNとIntelliJを使用)、gitを試しました(主にTortoiseGITを使用して…​ ここでパターンを検出しますか?)

弊社はリポジトリにSVNを使用していますが、すぐに切り替えることを考えていません。 gitをローカルで使用し、リモートSVNサーバーと連携するための推奨されるベストプラクティスとツールは何ですか?

おそらく今までに収集したように、コマンドラインツールよりも単純なシェル拡張/ IDE GUIを好むでしょう。 また、私はWindowsで作業しています(https://stackoverflow.com/questions/350907/git-svn-on-windows-where-to-get-binaries [関連するまだ古い質問]を参照)。

1 Answer


4


2つの選択肢があります。

1)TortoiseGitとTortoiseSVNの両方を並行して使用する

ローカルgitリポジトリにコミットするよりも、SVNサーバーから作業コピーをチェックアウトします。 Gitをローカル履歴トラッカーとして使用し、粒度を低くしてSVNにコミットします。 このアプローチでは、両方の世界で最高のツールを使用できますが、2つのツールと2つの履歴行を両立させる必要があります。

2)TortoiseGitのみを使用する

svnを.gitignoreに追加し、.gitをsvn:ignoreに追加するrember

次のGUIショートカットがあります:

  • 「git svn clone」a.k.a「svn checkout」

  • 「git svn fetch」a.k.a「svn update」-リベースと呼ばれる

  • 「git svn dcommit」a.k.a「svn commit」

これはより一般的なオプションですが、git-svnは非常に初歩的なsvnクライアントです。

dcommitは、最後のdcommitからsvn commitまでの一連のローカルコミットをコミットするため、全体としてアトミックではないことに注意してください。