- 投稿日:
特定ブランチ以外を全部消す
Git 2.25.1で確認
# マージされてないのは残す
git branch -d $(git branch | grep -vP <PCRE pattern>)
# 強制削除
git branch -D $(git branch | grep -vP <PCRE pattern>)
参考:git-branch - List, create, or delete branches (git-scm.com)
マージコミットをリバートする
Git 2.25.1で確認。基本-m 1
で問題ないと思われる
git revert -m 1 <commit>
コミット間のハッシュを見る
Git 2.25.1で確認
# 新しい順
git log --pretty=format:'%H' <commit>..<commit>
# 古い順
git log --pretty=format:'%H' <commit>..<commit> --reverse
- 投稿日:
VisualStudio 2022でGitの署名コミットをしようとしたらエラーを吐いたのでその対処法
前提条件
- Gpg4winをインストールしている
- cmdから署名コミットができる
- 最低限以下の設定がある
[user]
name = your-name
email = your@example.com
signingkey = XXXXXXXXXXXXX
[commit]
gpgsign = true
確認環境
下記のgpgはGpg4winにバンドルされているものです
Env | Ver |
---|---|
Visual Studio Community 2022 (64 bit) | Version 17.5.1 |
Git | 2.40.0.windows.1 |
gpg | 2.3.4 |
エラー内容
このエラーをコピーしようとするとVisualStudioがクラッシュしたので頑張って写経しました
Git failed with a fatal error.
Git failed with a fatal error.
hint: core.useBuiltinFSMonitor=true is deprecated; please set core.fsmonitor=ture instead
hint: Disable this message with "git config advice.useBuiltinFSMonitorConfig false"
error: cannot spawn gpg: No such file or directory
error: gpg failed wqrite commit object
対処方法
GitのGlobal Config設定変更で対処する
- 次のコマンドを流す
git config --global gpg.program "C:\Program Files (x86)\GnuPG\bin\gpg.exe"
gpg.exe
のパスは環境に応じて書き換えること
参考までにWindowsのGlobal Configは%USERPROFILE%.gitconfig
にあるのでファイルを編集して対応する場合は、下記内容を追記することで対応できる
[gpg]
program = "C:\\Program Files (x86)\\GnuPG\\bin\\gpg.exe"