問題タブ [squash]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - マージ コミットをスカッシュ マージ コミットに書き換える
長く存続しているブランチのマージを行いましたが、競合の解決のためにマージを完了するのに時間がかかりました。
で自分の作品を公開できないことがわかりましたgit-svn
:git svn rebase
は、1 つのマージ コミットを送信する代わりに、マージされたブランチのすべてのコミットをリベースします。発見git merge --squash
が少し遅かった…
rerere
既に行われたすべての競合解決作業を失うことなく (つまり、ツールを有効にしていないため、新しいマージをトリガーすることなく)、マージ コミットを「スカッシュ マージ」コミットに変更 (リベース インタラクティブ?) することは可能ですか?
git - git subtree push --squash はスカッシュしない
私はgit subtree
gitリポジトリを整理するために使用しています。という名前のメイン リポジトリと という名前repo
のライブラリがあるとしlib
ます。
lib
リポジトリの履歴を押しつぶすことで、リポジトリの「インポート」に成功しました。lib
私も歴史をつぶすことで貢献したいと思います。これは機能していないようです:--squash
オプションを指定しますgit subtree push
が、履歴を見ると、まだすべてのコミットを送信しています。
再現方法
問題を再現するために必要な最小限のコマンドを示すスクリプトを次に示します。
git log
問題を示す
git log blabla
2 つのコマンドの出力は次のとおりです。
と :
ご覧のとおり"repo commit 2,3,4"
、squash オプションを指定したにもかかわらず、lib には が表示されます。逆に機能したため、Squashed 'lib/' content from commit f28bf8e
.
Windows では git バージョン 1.8.1.msysgit.1 を、Linux では git バージョン 1.8.3.4 を試しました。
--squash
では、オプションがスカッシュを実行しないのはなぜでしょうか?
補足質問
repo
リポジトリのログに lib/master が表示されるのはなぜですか? 「失敗」の後にのみ表示されることを知っていますgit push
。最初のコメントをgit log blabla
外すと、隠し履歴を示す次の出力が得られますが、 lib/master の兆候はありません。
excel - 特定のコンピューターで Excel を開くとグラフが押しつぶされる
Excel のグラフに問題があります。私のオフィスでは、特定のスプレッドシートを開くと、次のようなグラフが表示されます。
誰もが Windows XP を使用しており、Excel 2003 と 2007 が混在しています。このバグに遭遇するのは一部の人だけであり、IT 部門はその理由を突き止めることができません。データは商業的に機密であるため、より具体的なものやログを投稿することはできませんが、これが一般的な障害であり、簡単に修正できることを望んでいました.
ご協力いただきありがとうございます、
git - ローカルとリモートの Git リポジトリの違いで単一のコミットを作成する方法は?
Git で、ローカル ブランチで作業しているとします。
私はローカル コミット A、B、C を作成し、その間にリモート ブランチはコミット X と Y で移動しました。
ここでプッシュすると、リモート履歴にはすべての A、B、C、および M コミットが含まれます...しかし、これは私が望むものではありません。
ローカル ブランチとの違いを含む 1 つのコミットをプッシュするだけで、リモート ブランチは次のようになり、マージの複雑さがなくなります。
どうすればこれを達成できますか?
automated-tests - SquashTA - 既存のテストの統合
テストの管理に squashTA を使用できることを楽しみにしています。私たちが直面している問題は、すでに大量の自動テスト コレクションがあり、squash TA を使用して squash TM 経由でそれらを実行できないことです。
私たちのテストでは、junit+selenium WebDriver+SpringFramework を使用しています。現在、maven (コマンドライン) を介して自動テストを起動し、jenkins サーバーでそれらを定期的に実行しています。
スカッシュ TA プロジェクトでテストを再利用しようとしました。src/squashta/resources/selenium/java
ただし、このフォルダー内のコードは Java パッケージをサポートしていません。この例の Java は本物の Java ではなく、squashTA による偽の Java 解析のようです。
そのような既存のテストを squash(TA/TM) で使用する手段はありますか? または、仕事をすることができるあなたが知っている代替手段はありますか? (現在 testlink を使用しており、変更する必要があります)。
git - 任意に多数のコミットを結合またはリベースする
私の地元のgit log
番組としましょう:
私のリモートgit log
ショー:
これに到達する最も簡単な方法は何ですか(任意に多数のローカルコミットを想定しています):
git - 非線形コミットを 1 つのコミットにまとめる (ソーセージ作り)
次の git 履歴を検討してください。
21f05f9
738ae0a
と2535dca
を 1 つのコミットに結合するにはどうすればよいですか?
git rebase -i 2535dca
、pick
ing 2535dca
、squash
ing 21f05f9
、を試し738ae0a
ましたが、次のエラーが表示されました。
0534049
コミットをスキップする方法があり288ffd2
、リベースのインタラクティブ モード内にあるかどうかはわかりません。
私がしていることを行うためのより良い方法はありますか? 落とし穴はありますか?
編集:
私が理解し始めているのは、特にそれらのコミットがすべて1つのファイルに関連している場合、非線形コミットが必要な場所に自分自身を置くべきではないということです。コミットによってコードが壊れたり、競合が発生したりする例が見られました。