新しいGit 2.8.0がリリースされました ! 過去数週間、リリースが候補段階にあったとき、私はそれについてのコミットとメモのリストを調べ、新しいことを試し、興味深い点に注目しました。 時間を節約するために、試してみる価値のある機能の主観的な選択をお勧めします。 それを使用してください!
push -d短縮バージョン、 push --deleteと同義
これは、多くのオプションの完全性とタイピングの速度の両方に素晴らしい追加です。 すでにgit branch -dを使用してローカルブランチを削除している可能性がありますが、リモートブランチの削除コマンドをgit push -d短縮することもできます。
git branch -d my-branch
git grepフロー制御と再帰保護
関連するいくつかの機能がgit grep機能に統合されました。
- これで、
grepがオブジェクトのツリーを検索するために使用するスレッドの数を指定できます。 --num-threadsをコマンドに追加するか、 grep.threadsパラメーターを.gitconfigして、構成を永続化します。
git grep --num-threads=5 <pattern>
- gitリポジトリに属さないフォルダーで
git grepを実行すると、Gitは親フォルダーを再帰的に確認することでリポジトリのルートの検索を開始します-これは、結果として取得したいものに常に対応するとは限りません。 新しいバージョンでは、 --no-indexオプションを明示的に指定することで、gitリポジトリの外でgit grepを使用できるようになりました。 この動作を標準にするには、 grep.fallbackToNoIndexパラメーターをGit構成に追加するだけです。
git grep --no-index <pattern>
対話型モードpull --rebase
git pull --rebaseをインタラクティブに実行できるようになりました。
git pull --rebase=interactive
これは、プル実行中にコミットを折りたたんだり、コメントを直接変更したりする場合のプルリベースプロセスへの興味深い追加です( rebaseの使用に関する標準の警告を忘れないでください)。
git config尋ねます;)
git configは、値が設定された場所を表示できるようになりました。構成ファイルまたはblobファイルで定義されているか、標準入力から読み取られるか、コマンドラインで指定されるかなどです。 たとえば、 「エイリアスst (ステータス)をどこで定義しましたか?」 、そしてgit configが答えを教えてくれます:
git config --show-origin alias.st file:/Users/np/.gitconfig status -s
他の興味深い
git blame時間がかかる場合、目を引く進行状況インジケーターがあります。<branch>^{/!-<pattern>}という形式の新しい表記が利用可能になりました。 <branch>から到達可能なコミットを参照できますが、指定された<pattern>を満たしていません。git fetchコマンドは、実行時にIPv4(またはIPv6)プロトコルのみを使用するように構成できます。 パラメーターを追加します: git fetch -4またはgit fetch -6 。git worktree add -B <branchname>という形式のコマンドは正しく機能しませんでした-このバグは修正されました。
次は?
上記は単なる選択であり、リリースにはさらに多くが含まれています! Git 2.8.0に含まれるその他の革新に関する詳細は、ソースコードと完全なリリースノートに記載されています 。
ニコラ・パオルッチ -アトラシアンのデベロッパーアドボケート。 彼はGit、開発プロセス、コードコラボレーション、Dockerについて書いて話します。 アトラシアン以前は、開発チームを率い、地理空間データ用のクラウドソーシングアプリケーションを構築し、大規模な電子商取引システムの展開に取り組みました。 ニコラについてのいくつかの事実:彼は話すとき(イタリア語で)積極的にジェスチャーをし、アムステルダムに住み、ドゥカティに車で行きます。 ニコラはTwitterの@durdnという仮名で見つけることができます。