4

私はgitを使用してオープンソースプロジェクトに取り組んでいます。

ソース コードに変更を加え (既存のファイルを変更し、新しいファイルを追加し、既存のファイルを削除します)、コミットせずにパッチ ファイルを生成したいと考えています。どうやってするの ?

4

3 に答える 3

4

プロジェクトに追加された新しいファイルの場合:

git add -N <path of the new file>

次に、パッチを生成します。

git diff > patch
于 2012-08-17T15:35:16.910 に答える
4

広く知られていないか、SO のソリューションとして広く使用されていないだけかもしれませんが、 の出力はgit diffにパイプできる有効なパッチ形式ですgit apply。したがって、パッチを生成するために使用するステージングされていない変更があると仮定します。

git diff -- <file> > ~/mypatch ;# redirect diff output to ~/mypatch

次に、別のリポジトリで:

git apply < ~/mypatch

まったく追跡されていない新しいファイルがあるとします。フラグをgit diff指定してファイルを比較することで、引き続き使用できます。--no-index/dev/null

git diff --no-index /dev/null <file> ~/mypatch

その後、同じように適用します。

この回答は、主に git でできることの演習です。新しいブランチ(Adam Dymitrukの回答による)または使用しているメインブランチ(madth3のコメントによる)のいずれかに変更をローカルにコミットしないという実際的な理由は考えられません。

于 2012-08-17T12:59:26.757 に答える
-1

コミットします。

git checkout -b myfeature

好きならまず

于 2012-08-16T17:13:39.687 に答える