2011-02-27 16 views
2

git-svnのアップデートを無視する方法はありますか?私の通常のワークフロー:マスターに私のマスター `git log`のgit-svnファイルを無視する

  • git svn rebaseをチェックアウトし、私のdev Gitのブランチ
  • で何かをやって

    • cherry-pick再びチェックアウトdevの
    • git merge master
    • git svn dcommit
    • devから

    唯一の問題は、git merge masterの後にgit log -n ###を実行すると、のアップデートもすべて取得することです。私は最新のgitのコミットを制限することはできますか?

  • +0

    デベロッパーブランチを使用すると、コミットをマージしたり縮めたりしていないため、大したことはありません。トランクで作業するか、マージでdevに作業するか、マスターからdevを継続的に再分岐します。 –

    答えて

    1

    いいえ、dev-branchにmasterをマージすることはできません。git-svnが乗っ取られることはありません。

    git svn dcommitを実行すると、実際には devブランチからチェリーピックされたコミットを書き換えます。 git-svnコミットはあなたの歴史の一部になりました。そして、それらを取り除こうとするのは愚かなことでしょう。私が正しく推測している場合、あなたのdev-branchは、あなたのgit-svnのコミットが展開されているため、dev-commitと再結合されたマージコミットでいっぱいです。これは面倒です。

    あなたのワークフローが最適かどうかは確かです。たぶん、あなたはこれを試してみてください:今dev

  • git rebase master:最新のSVNのためのマスターでdevブランチ
  • git svn rebase

    1. 作業作業作業が
    2. を変更する今、あなたの仕事の下でこれらの最新の変更をリベースマスターに戻って変更内容を早送り:マスター上master
    3. git svn dcommitgit merge dev
    4. devブランチを削除します。コミットがdcommitによって書き直されて以来、それを保つ意味はほとんどありません。 git branch -d dev
    5. git checkout -b dev次のフィーチャー/フィックスです。
  • +0

    トマに感謝します。私はこのワークフローを行って、それがどんなものかを見ていきます。 – hellatan

    関連する問題