[解決済み] git format-patchでコミットを1つのパッチにまとめるにはどうしたらいいですか?
2022-04-22 14:15:31
質問
あるブランチに8つのコミットがあり、それをまだgitに慣れていない人たちにメールで送りたいと思っています。 今のところ、何をやっても8つのパッチファイルが作成されるか、あるいはブランチの歴史上のすべてのコミットのパッチファイルが作成されるかのどちらかです。 git rebase --interactive を使ってコミットを潰しましたが、今は何をやっても最初から何十億ものパッチを与えてしまいます。 私は何を間違えているのでしょうか?
git format-patch master HEAD # yields zillions of patches, even though there's
# only one commit since master
解決方法は?
以下のように、捨てブランチで行うことをお勧めします。 もしあなたのコミットが "newlines" ブランチにあり、すでに "master" ブランチに切り替えているのなら、これでうまくいくはずです。
[adam@mbp2600 example (master)]$ git checkout -b tmpsquash
Switched to a new branch "tmpsquash"
[adam@mbp2600 example (tmpsquash)]$ git merge --squash newlines
Updating 4d2de39..b6768b2
Fast forward
Squash commit -- not updating HEAD
test.txt | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
[adam@mbp2600 example (tmpsquash)]$ git commit -a -m "My squashed commits"
[tmpsquash]: created 75b0a89: "My squashed commits"
1 files changed, 2 insertions(+), 0 deletions(-)
[adam@mbp2600 example (tmpsquash)]$ git format-patch master
0001-My-squashed-commits.patch
関連
-
[解決済み】複数のgitコミットを元に戻すには?
-
[解決済み】なぜ「git commit」は私の変更を保存しないのですか?
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitを使って最後のXコミットをまとめる
-
[解決済み] Git のリモートブランチを作成する方法を教えてください。
-
[解決済み] Gitで変更された複数のファイルのうち、1つのファイルだけを隠す?
-
[解決済み] git に自分の好きなエディタを使わせてコミットするにはどうしたらいいですか?
-
[解決済み] Git リポジトリを特定のフォルダにクローンする方法は?
-
[解決済み] detached HEADとmaster/originの連携はどうすればいいですか?
-
[解決済み】Gitのワークフローとrebaseとmergeの質問
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Git サブモジュール head 'reference is not a tree' エラー
-
[解決済み】gitが「変更をコミットするか、マージする前にstashしてください」と言うのを解決するには?
-
[解決済み】なぜ「git commit」は私の変更を保存しないのですか?
-
[解決済み] SourceTree error:1407742E:SSLルーチン:SSL23_GET_SERVER_HELLO:tlsv1警告プロトコルバージョン
-
[解決済み] VSTS Git Fetch Failed with exit code: 128
-
[解決済み] .gitignore と "以下の追跡されていない作業ツリーファイルはチェックアウトによって上書きされるでしょう"
-
[解決済み] GitBash | origin master - rejected (fetch first) | GitHub リポジトリにファイルがない。
-
[解決済み] Git エラー : 'upstream' は git リポジトリでないようです。
-
[解決済み] 警告: リモート HEAD は存在しない参照元を参照しているため、チェックアウトできません。
-
[解決済み] ssh-keygen' は内部コマンドまたは外部コマンドとして認識されません。