標準愚痴出力

個人的なIT作業ログです。もしかしたら一般的に参考になることが書いているかもしれません(弱気

git

Git 互換DVCS、jj(jujutsu) でのテキストエディター指定における空白の扱い

基本は Settings - Jujutsu docs に記載のとおり 環境変数 JJ_EDITOR 設定ファイルの ui.editor 環境変数 VISUAL 環境変数 EDITOR の順で参照される。この時、1,3,4 について空白は引数の絶対的な区切リ文字として機能する。つまり set "EDITOR=C:/Program F…

(解決編) jujutsu v0.15.1 で、コミットログを gvim.exe で編集できなくなってしまった

(前回) → jujutsu v0.15.1 で、コミットログを gvim.exe で編集できなくなってしまった。 - 標準愚痴出力 どうやら、\\?\C:\… 形式のパスに含まれるクエスチョンマークを、gvim がワイルドカードと誤認してしまったらしい。自前展開にトライした結果、失敗し…

Gitレポジトリを初期化+アルファをするサブコマンドを書いた

Git

git-xxx という名前の実行ファイルを %PATH% の中に書いておくと git xxx いう風に git のサブコマンドとして呼び出すことが出来る。Windows の場合は、拡張子の解釈の都合でバッチファイルは使えないが、そのかわり git付属のbashスクリプトが使える。 で、…

分岐以降の master(main) のコミットを revert して、別に伸びてしまった第二ブランチのコミットを master(main) に取り込む

master とは別に second というブランチを作っていて、そちらが伸びてしまった。master もブランチ時点から少し commit があるが、それらの commit は廃止して、second の commit を全部 master に取り込みたい。 特に難しくなく、普通にいけた。 懸念してい…

Git のセットアップ for Windows & nyagos

Git は普通に Gir for Windows をダウンロードしてインストールする(ここは別に小細工はない) .vimrc の設定 コミット時の文字コードを UTF8 にする au! FileType gitcommit setl fenc=utf-8 .nyagos の設定 git.exe のあるフォルダーを %PATH% に追加 loc…

「git new」コマンドをでっち上げる(Windowsでgitのサブコマンドを作る)

git

自分の場合、新規レポジトリを作る際、いつも定番的に実行しなければいけない作業がある git init 最初に空コミット作成 改行コード変換の無効設定 日本語ファイル名はそのまま表示させる メールアドレス等の設定 次の記事によると、「git-XXXX」という実行…

git履歴の先頭に、後から「空commit」を割り込ませる

git

本件を実行する前に git clone でバックアップを取っておきましょう あらかじめ、全commitの履歴を cherry-pick するスクリプトを作成しておく git log --pretty="format:%H" | gawk '/./{ line[i++]=$0 } END{ while(--i >= 0){ print "git cherry-pick ",l…

(補足)git で特定の2つのフォルダーを使ってる履歴のみ残して、後は消す

git

git で特定の2つのフォルダーを使ってる履歴のみ残して、後は消す 最初の commit だけは argf , seek フォルダーに関わってなくとも残ってしまう(あとで revert した) git rebase -i -root で、最初の commit も削除できた。

git で特定の2つのフォルダーを使ってる履歴のみ残して、後は消す

フォルダー一つだけなら git filter-branch --subdirectory-filter が使えるが、複数の場合はそうもいかない。 複数のフォルダーだけを残すために、Lua スクリプトをさくっと書いた。 function getgitlog(files) local fd = io.popen("git log " .. table.co…