「Git 2.40」公開 Emacsユーザーも利用できる「git jump」とは:複数の改良、バグ修正を実施
GitHubは、Gitの最新版「Git 2.40」の公開を受け、Git 2.40で興味深い機能を紹介した。
オープンソースの分散バージョン管理システム「Git」の最新版「Git 2.40」が、Gitプロジェクトから公開された。これを受けてGitHubは2023年3月13日(米国時間)に公式ブログで、Git 2.40で興味深い機能を紹介した。
Git 2.40で興味深い機能
「git jump」コマンド
「git jump」コマンドは、Gitのcontribディレクトリに同梱されているコマンドの1つだ。「git grep」のような動作をするコマンドであり、実行結果をVimのquickfixリストに送信する。これにより「git jump grep foo」のように書くと、Vimでプロジェクト内のfooにマッチする全ての箇所を素早く表示できる。
git jumpは、diffやmergeでも動作する。diffモードで実行すると、リポジトリの変更リストの先頭がquickfixリストに表示され、コミット前に変更を素早く確認可能だ。
Git 2.40 では、git jumpはEmacsにも対応し、Emacsクライアントにリストを入力できる。Emacsユーザーは以下のコマンドで試すことができる。
M-x grepgit jump --stdout grep foo
「git cat-file」の正確性向上
「git cat-file」はGitリポジトリ内にある任意のオブジェクトの内容を表示できるコマンドだ。オブジェクトのサイズを調査する際にも利用できるが、正確なオブジェクトサイズを表示しない問題があった。Git 2.40ではこの問題が修正されている。
「git check-attr」コマンド
Gitでは「.gitattributes」ファイルを用いて、指定したパターンに合致するファイル名に対して特定の属性を付与できる。以下のコマンドを利用することで属性の内容を確認できる。
$ head -n 2 .gitattributes * whitespace=!indent,trail,space *.[ch] whitespace=indent,trail,space diff=cpp
git check-attrコマンドは、複雑なルールや、複数のプロジェクトにおいて.gitattributesを使用している場合に、どの属性が適用されているか調査する際に役立つ。
$ git check-attr -a git.c git.c: diff: cpp git.c: whitespace: indent,trail,space
C言語による「git bisect」コマンドの実装
GitではPerlやシェルスクリプトによる実装をC言語に置き換える取り組みが行われている。その成果の一つとして、Gitの履歴から問題箇所を検出するgit bisectがC言語で再実装された。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 「出力されたコード、そのまま使ったの?」 JiteraがChatGPTの業務利用に関する調査結果を発表
Jiteraは、「ChatGPTに関する調査」の結果を発表した。それによると業務でChatGPTを活用している企業は約14%で、ほとんどの会社で活用されていないことが分かった。 - GitHubリポジトリからSBOMを簡単に生成できる新機能をリリース、GitHub
GitHubは、GitHubのクラウドリポジトリからワンクリックで、米商務省のNTIAのガイドラインに準拠した「SBOM」(ソフトウェア部品表)を生成できる新機能を発表した。 - GitHubユーザーなら無料「GitHub Actions Importer」が一般提供開始
GitHubは「GitHub Actions Importer」の一般提供を開始した。GitHub Actions Importerは、「Azure DevOps」「CircleCI」「GitLab」「Jenkins」「Travis CI」から「GitHub Actions」への移行を計画、予測、自動化することができる。