Github Tips

ブランチの中身を置き換える

mainでrepを置き換えるとすると、

1
2
3
git switch rep
git fetch origin main
git merge origin/main

参考
【Git】git mergeコマンドで異なるブランチの更新分を取り込む | Points & Lines

ローカルのディレクトリをGitHubに上げる

  1. githubにログインし、空のリポジトリを作成
    (※README.mdは作成しない)
参考画像


  1. リポジトリにしたいディレクトリの下に移動して実行
1
2
3
⁠git init
⁠git add -A
⁠git commit -m "first commit"
  1. 「Quick setup」と書いてあるところからHTTPSもしくはSSHをコピー
1
git remote add origin <HTTPSorSHHをコピペ>
  1. gitパッケージのバージョンが古いと、既定のブランチ名が「master」になってる
    →githubの方では「main」なので、このままpushすると「masterが無い」とエラーを吐かれる
    git branchで確認して、masterだったら名前を変える
1
git branch -m master main
  1. push
1
git push -u origin main

卍おわり卍

ローカルの内容をリモートで強制上書き

注意⚠ ローカルの内容は木っ端微塵になる

  1. 上書きしたいブランチに移動し、リモートの最新情報を追跡に保存
1
2
git switch main
git fetch
  1. リボジトリの情報をリモートのところまで巻き戻す
1
git reset --hard origin/main

他のブランチからファイルを持ってくる

git restore --source <ブランチ名> -- <ファイル名またはパス>
  • 今いるブランチ=コピー先
  • --sourceで指定したブランチ=コピー元

大文字と小文字を区別する

Githubに上げたファイルやフォルダの名前にある大文字が小文字に変わってしまう
Windows上で名前を変えたり作ったりすると起きる現象

ローカル → リモート
push
Abc  →  abc

以下を実行してpushする

1
git config core.ignorecase false

Linuxでは名前の大文字小文字を区別するが、Windows(NTFS)はしないため、
PowerShellとかに入ってるGitはデフォルトで区別しない設定になってる(core.ignorecasetureだと区別しない)
GitHubはLinux準拠であるものの、Windowsからpushすると区別するデータが無いため自動的に小文字にしてしまうらしい