これが私がしていることの簡単な道です:
$ cd /newdir
$ git clone git@github.com:... .
$ git branch -m master github
$ git svn clone svn+ssh://... .
$ git branch -m master SVN
次に、Githubにプッシュする前に必要なことを実行するスクリプトがいくつかあります。
SVNブランチとgithubブランチが必要です。両方のブランチのファイルは同じですが、内容が異なるためです。ファイルをGithubにプッシュする前に、ヘッダーを追加します。2つのブランチは、SVN上のすべてのファイルがGithubに移動できないようにするためにも使用されます。
すべての更新はSVNブランチからgithubブランチへのものです。ときどき、SVNにないものをgithubブランチに追加します。githubブランチからSVNブランチにファイル/アップデートを送信することは決してありません。
私の問題1は、git svn fetchを実行するたびに、新しいマスターブランチが作成されることです。マスターローカルブランチの代わりにSVNローカルブランチを使用するようにgitsvnfetchに指示するにはどうすればよいですか?
毎回:
$ git svn fetch
私はできた:
$ git checkout SVN
$ git merge master
$ git branch -d master
しかし、それを行うための賢い方法としては見えません。
次に、ローカルgithubブランチがGithubのリモート/マスターブランチであることをローカルgitに伝えるのに問題があります。コマンド
$ git push git@github.com:...
これは、ローカルブランチの名前を変更する前は完全に機能していましたが、現在は私が望むことを行っていません。
だから私の2つの質問:
1 - Telling git svn to always use local SVN branch when getting updates from SVN server
2 - Telling git that local github branch is remote master branch at github