学習バンザイITエンジニアの精神安穏日記

ITエンジニアというより、IT系雑務者

Git

current repositoryのrepository名のみを取得する方法

まず、リポジトリに入る。 次に、以下のコマンドを実行する。 git rev-parse --show-toplevel | sed 's/.*\///' 配下のディレクトリのどの階層でも実行できる。 submoduleに入ったときの挙動は知らんので、だれか試したらコメントください。

submoduleに変更があってアワアワしたときの対処メモ

git

対象読者 submoduleに変更があったようだがよくわからない submoduleに変更があって、アワアワした まずすること 最初の設定ができていない可能性もあるのでチェックする。 masavo.jp git submodule update する。 それでもだめな場合は以下をやっていったら…

github Enterprizeにsshでpushしちゃう!?

Git

Enterprise側でpersonal access tokenがブロックされている場合は、httpsじゃなくてssh使おうと言う話ですな joinしたあとは、Enterprise側のセッティングは基本的になにもないので、普通のgithubアカウント持っていて、teamにjoinした場合は個人のssh設定す…

【git】both modifiedのファイルのみ編集する方法(fish)

vim -O (git diff --name-only --diff-filter=U)

gitのmodifiedのみをaddする方法

Git

まず これで変更したファイルのみ出す git status --porcelain | cat | grep "^.M" --color=never | sed -e 's/.* M //g' fishの場合 git add (git status --porcelain | cat | grep "^.M" --color=never | sed -e 's/.* M //g')

git submodule のディレクトリが空の時の対処法

git

ググればわかるけど、READMEに書いといたほうがいいな 知らなすぎるのがいけない。 よくわからなくて、submoduleのディレクトリに入って、pullしたりcheckoutしている人向け。 メインのリポジトリをcloneする前 メインのリポジトリをcloneした直後 その後 メ…

gitでコンフリクトしたファイルのみをvimで複数同時に開く方法

git

fishシェルの場合 vim -O (git diff -m --name-only | uniq) bashの場合(多分) git diff -m --name-only | uniq | xargs vim -O

git管理下の文字列を置換するgsubコマンドを作る

Git

事前準備 brew install rg shellscript ファイル名gsubにして実行権限つける #!/bin/sh rg -l "$1" ./; rg -l "$1" ./ | xargs sed -i '' -e "s/$1/$2/g"; 使いかた $ gsub aaa bbb aaa.txt aaaがbbbに書き換わる ※ファイル名は書き換わらないので注意

gitのdiffをcommitIDを指定して比較するコマンド(仕様・技術選定理由付き)

Git

動機 git diff <commit ID1>..<commit iD2> がしたい時がある。 しかし、わざわざgit logして確認した上で選択するのがめんどくさい。 よしコマンド化しよう。 仕様(ユースケース) ユーザーは、sdfコマンドをコマンドラインに入力する (※sdfはselectable diffの略) システムは直近n件</commit></commit>…

Gitで変更したファイルパスを更新日時順に並べるコマンド

Git

メモにあった。多分どこかから拾ってきたのだろう。 git ls-files -z | xargs -0 -n1 -I{} -- sh -c 'git log -1 --format="%at {}" {} | tail -1' | sort | cut -d " " -f2-