git†
git command 組合1_正常バターン†
git clone https://xxxx/aa.git
git checkout -b bbranch
...Edit files...
git add filename #ファイル指定
git commit -m "edit/add cc.file"
git push origin bbranch
git command 組合2_正常バターン†
git clone -b bbranch https://repo.xxxx/aa.git
git branch
...Edit files...
git add . #すべての修正ファイル
git commit -m "edit/add cc files"
git push
一度push後、織り込み漏れ程度ならcomment編集なしで織り込む場合†
git add .
git commit --amend --no-edit
git push --force
ベースのupdateを取り込む†
手順1:作業を一旦退避(untracked も含める)
git stash push -u -m "WIP before merge develop"
手順2:改めて develop を取り込む(merge)
git merge origin/develop
手順3:退避した作業を戻す
git stash pop
コンフリクトが出たら解消して git add ... → git commit
format Check†
npx prettier --write src/aaa.ts
npx eslint src/bbb.ts --max-warnings 0
組み込みに適した Git ライブラリ OSS†
| ライブラリ名 | 言語 | 特徴 |
| libgit2 | C | Git の機能を低レベルで操作できる高速ライブラリ。多くの言語バインディングあり(Python, Ruby, Goなど) |
| JGit | Java | Java製アプリに最適。Gitの機能を純粋なJavaで実装しており、Gitコマンド不要 |
| go-git | Go | Gitの機能をGo言語で完全に再実装。サーバー・クライアント両方に使える |
| dulwich | Python | Python製の軽量Gitライブラリ。Gitコマンドに依存せず、組み込みに向いている |
| isomorphic-git | JavaScript | ブラウザやNode.jsで動作するGitライブラリ。WebベースのGitクライアントに最適 |
rebaseのmerger選択方法†
