2

Gitをワークフローに導入することを検討しています。現時点では、新しいプロジェクトごとにコピーして貼り付ける一般的な PHP テンプレートがあります。コピーされたテンプレートは、プロジェクトに固有のモジュールで拡張されます。プロジェクトで作業しているときに、テンプレートに適した調整を行い、それらをコピーしてマスター テンプレートに貼り付けることがあります。

Git を導入する場合、マスター テンプレートがメイン リポジトリになります。すべての新しいプロジェクトはテンプレートのクローンになります (そのため、テンプレートのバグ修正をプルダウンできます)。しかし、変更をマスター テンプレートに戻すにはどうすればよいでしょうか。マスター テンプレートにプロジェクト固有のモジュールが散らばってしまうため、すべてのファイルをプッシュすることはできません。

特定のコミットのみをリモート リポジトリにプッシュする方法はありますか?

4

2 に答える 2

2

git rebaseテンプレートに適用する必要がある変更をインタラクティブにアップストリーム リポジトリに反映できます。このために、開発者はアップストリームのマスターから一時的なブランチを作成し、必要な変更をそこにリベースし、そのブランチをプッシュします (プッシュ アクセス権がある場合。そうでない場合は、テンプレート リポジトリを「所有」する人がプルする必要があります)。それらから変更を適用するか、変更を適用します)。

参照:リベースに関する Pro Git の章

于 2012-12-13T10:01:55.030 に答える
0

マスターテンプレートを使用するプロジェクトからの変更はプッシュしません。代わりに、マスターテンプレート用に独自のプロジェクトを作成します。このプロジェクトは、マスターテンプレートのバグ修正と新機能のみを対象としています。このプロジェクトのみが変更をマスターテンプレートリポジトリにプッシュでき、他のプロジェクトはプルのみが可能です。

于 2012-12-13T10:11:04.167 に答える