以前のリリースと比較して、新しいバージョンには 505 件の変更が含まれており、77 人の開発者の参加によって準備され、そのうち 26 人が初めて開発に参加しました。 基本
- 実験的な「git switch」および「git list」コマンドは、ブランチ操作 (切り替えと作成) や作業ディレクトリ内のファイルの復元 (「git checkout $commit - $filename」) など、疎結合の「git checkout」機能を分離するために導入されました。または、ステージング領域に直接配置します (「-staging」、「git checkout」には類似したものはありません)。 「git checkout」とは異なり、「git lista」は復元中のディレクトリから追跡されていないファイルを削除することに注意してください (デフォルトでは「--no-overlay」)。
- オプション「git merge –quit」を追加しました。これは、「-abort」と同様に、ブランチのマージプロセスを停止しますが、作業ディレクトリはそのまま残します。 このオプションは、手動マージ中に行われた変更の一部を別のコミットとして発行することが望ましい場合に役立ちます。
- 「git clone」、「git fetch」、および「git Push」コマンドは、リンクされたリポジトリ内のコミットの存在を考慮するようになりました(
代替 ); -
追加した 「gitblame —ignore-rev」および「—ignore-revs-file」オプションを使用すると、軽微な変更 (書式設定の修正など) を行うコミットをスキップできます。 - 競合するコミットをスキップする「git Cherry-pick —skip」オプションを追加しました(「gitリセット&& git Cherry-pick —Continue」シーケンスの記憶された類似物)。
- status.aheadBehind 設定を追加しました。これにより、「git status -[no-]ahead-behind」オプションが永久に修正されます。
- このリリースの時点では、「git log」はデフォルトで、git shortlog がすでに行っているのと同様に、メールマップによって加えられた変更を考慮します。
- 2.18で導入されたコミットグラフ(core.commitGraph)の実験的キャッシュの更新操作が大幅に高速化されました。 また、複数のテンプレートを使用する場合の git for-each-ref が高速になり、「git fetch —multiple」での auto-gc の呼び出し数が減少しました。
- 「git Branch --list」は、ロケールに関係なく、常にリストの先頭に切り離された HEAD を表示するようになりました。
出所: オープンネット.ru