gitメモ

Visual Studio 上での git 操作とコマンドの関連付け
元に戻す:git revert
リセット → 変更を保持(--mixed):git reset --mixed HEAD^
リセット → 変更を保持(--hard):git reset --hard HEAD^

"git reset --soft HEAD^" に当たるものは無い。
近いのは「リセット → 変更を保持(--mixed)」で、違いは
--mixed :ステージング状態に戻す
--soft :ステージング前に戻す

→ 「元に戻す」は戻した後の新たな履歴が追加される。履歴を変えたくないなら「リセット → 変更を保持(--mixed) 」を使う。
編集者名を一括で変更する
GitHubの履歴に公開したくないメールアドレスが載ってしまったので修正したい
https://qiita.com/sea_mountain/items/d70216a5bc16a88ed932
  1. git pull をして最新をすべて取り込む
  2. 書き換え
git filter-branch -f --env-filter "GIT_AUTHOR_NAME='変更後名前'; GIT_AUTHOR_EMAIL='変更後メールアドレス'; GIT_COMMITTER_NAME='変更後名前'; GIT_COMMITTER_EMAIL='変更後メールアドレス';" HEAD
  1. 強制push
git push --force-with-lease origin main
Git GUI のメニューには pull に相当するものがない。
ツールの追加で、自分で追加
設定画面
間違えてリモートにpushしたとき
VisualStudio上でやると間違えやすい。
そのため、GitGUIを使う。
  1. GitGUIでローカルのフォルダを開く。
  2. メニューのリポジトリにある、ブランチ master の履歴を見る
  3. 無くしたい項目の一つ前を選んで、右クリックメニューから Reset master branch to here
  4. Git Bashを開く
  5. git push -f origin master
ローカルはそのままにリモートだけ消すことも出来る。
参考 https://www-creators.com/archives/2020
ローカルでgitを一から作って進めていたとする。
それをバックアップフォルダに移し、元のローカルからは変更後にpushするように変える場合。
参考
https://qiita.com/devzooiiooz/items/56a02342d9d65d79f6c3
https://qiita.com/minoringo/items/917e325892733e0d606e

バックアップフォルダを作る。名前の末尾に.gitを付けるのが慣例
Z:\git\XXX.git
cd Z:\git\XXX.git
git init --bare

これにより、z:\git\XXX.git フォルダは、bareというフォルダになる。
bareは更新情報を持つが、ファイルそのものは見えないフォルダになる。
逆に作業しているフォルダはnon-bareと言う。

まず、作業していたローカルの作業フォルダが c:\git\XXX が今何処を見ているかを確認する。
cd c:\git\XXX
git remote -v

もし、見ている先が無いと表示されたなら
git remote add origin Z:/git/XXX.git
    \は/に変える
もし、見ている先があると表示されたら
git remote set-url origin Z:/git/XXX.git

これで入れ替わったので、最後にpushする
cd c:\git\XXX
git push

Visual Studio内の表示は変わらなかったので、一旦再起動したら更新された。

動作未確認だがVisual Studio上でも変更出来るようだ。
チームエクスプローラで設定→リポジトリの設定
下部のリモートの項で、追加または編集する