2

gitGUIとしてGitExtensionsを使用しています。

vs c#プロジェクトで作業している間、私は多くの設定ファイルを保持する必要がありました。私はそれらを維持するために地元の支部を作ることを考えました。

これで、私のワークフローは次のようになります。

  1. 実際の変更を加える
  2. ローカル設定ブランチからのチェックアウト
  3. コミット、プッシュ
  4. ローカル設定ブランチにチェックアウトします
  5. ローカルブランチをリベースする

ローカル設定のコミットで変更したファイルに変更を加えない限り、正常に機能しています。ローカルブランチからチェックアウトした場合、このファイルの競合で中止されます。

変更を隠し、チェックアウトし、隠しを適用し、隠しをポップする必要があります。

これにはもっと良い方法がありますか?必要なのは、いくつかのファイルにいくつかの変更を保持することです。

4

2 に答える 2

1

なぜこのようにブランチを使用しているのですか? ブランチは、単一の「マスター」ブランチに戻す準備ができるまで機能を分離しておくことを目的としています。プロジェクトに関連する一連の設定ファイルがプロジェクトにある場合は、それで問題なく、それらを に保持できますmaster。設定が実験的なものである場合は、それらを別のブランチにコピーできますが、プロジェクト全体もそのブランチにある必要があります。

ワークフローは次のようになります。

  1. 実際の変更を行います。
  2. 変更をコミットします。
  3. 繰り返す。

ローカル リポジトリから変更を公開する準備ができたら、次のことができます。

  1. git pull
  2. 競合が存在する場合は修正します。
  3. git push

編集:おそらく別のワークフローはmaster、他のブランチでさまざまな設定を変更してメインプロジェクトを開発することですが、マスターが変更されると定期的にプルします。

  1. git commit // マスターの場合。
  2. git checkout debug
  3. git merge master//マスターをデバッグにプル
  4. 変更をテストし、必要に応じてコミットする
  5. git checkout master

この場合、マスターは決して変更されず、他のブランチの変更による影響も受けませんが、マスターの変更によってさまざまなブランチを最新の状態に保つことができます。

于 2012-08-31T14:00:05.717 に答える