gitのおすすめ(本・Udemy)!Githubの使い方(git reset –soft HEAD~3)

Githubの使い方をまとめておきます。

gitのおすすめ本・Udemy

こちらの記事に移転しました。

スポンサーリンク

VSCodeでGithubの使い方

Githubの公式

公式サイトはこちらです。

Githubの登録

登録方法は以下のとおりです。

  1. 画面右上の[Sign IN]
  2. メールアドレス、パスワード、ユーザー名(結構、重複で使われている場合が多い)の順番でいれる
  3. お知らせメールが必要かのチェックボックス。個人的にはいれず。
  4. ロボットでないことを証明する。
  5. メールが送信されているためコードをいれる。
  6. メンバーの人数、学生か先生かその他かを選ぶ。
  7. 目的をいれる。個人的にCollaborative codingCommunityだけチェックした。
  8. [Free](無料)か [Pro](有料) かを選ぶ。
  9. ダッシュボードに移動。
  10. 登録完了のメールが届いている。

githubのリポジトリ名の決め方

  • リポジトリ名がそのままurlになるため単語はurlの慣習に従ってハイフンで区切るのが無難
  • 公開リポジトリで検索でひっかけたいのならその文字列を含ませる。あまり目立ちたくないならその逆。

githubのリポジトリの作り方

リポジトリの作り方は以下のとおりです。2回目以降はNewのボタンで画面に移動します。

  • リポジトリ名を入力する。
  • PrivateかPublicか選ぶ。Privateは非公開。
  • Initialize this repository with a README:READMEを作成するか否か。後から作れるため未チェック。
  • Add .gitignore:git で無視するファイルを指定するファイル。後から作れるためNone
  • Choose a license:ライセンス設定。後から作れるためNone
  • [Create repository] でリポジトリを新規作成する。

githubのpushまでの基本的流れ!

git init

フォルダ隠しファイル.gitが生成されます。

git remote add origin https://github.com/<github-username>/リポジトリ名.git

githubでプロジェクトを作った際に表示されるURLを使います。git remote set-url originは既存のものを変えたいときに使います。

add、コミットをします。個人的にVsCodeのGUIでやります。

git push -u origin main

現在はmainでpushします。一度デフォルトの設定をmainにすると、それ以降、mainです。

gitのプッシュ(git push -u origin master)

git push -u origin master

-uは–set-upstream-toの省略形です。

-uは推奨されています。pullするとき、あれこれ聞かれるからです。-uをつけると上流ブランチになります。

git push origin master --force

pushがうまくいかないとき強制的に行う方法があります。通常はpullしましょう。

git push origin master --force-with-lease

もう少しマイルドな方法もあります。ローカルrefとリモートrefを比較してローカルが最新か否かを確認します。最新ではない場合はPUSHを失敗します。直前にfetchしているとPUSHが成功してしまうので要注意。

git push -u origin mainに変更

masterもつかえますが、mainに変更になりました。

masterかmain化か確認

git branch

masterをmainに変える

git branch -M main

プッシュ。

git push -u origin main

masterを削除したい場合はこうです。

git branch -d master
スポンサーリンク

githubのデフォルト設定をmasterからmainに切り替える

Settings > Repositories > Repository default branch

コマンド

git config --global init.defaultBranch main

確認します。

git config --global init.defaultBranch
スポンサーリンク

git reset –soft HEAD~3(コミットを取り消す)

git reset --soft HEAD~3

git reset --soft HEAD~3 コマンドは、ローカルリポジトリの最近の3つのコミットを取り消します。

プッシュされている場合は注意が必要です。

共有しているブランチでは避けるべきのようですが、個人開発や個人のブランチの場合は次のようなコマンドを組み合わせて使えるようです。

# 1. 現在のブランチがmainであることを確認
git branch

# 2. ローカルの状態を2つ前のコミットに戻す
git reset --hard HEAD~2

# 3. 変更を強制的にプッシュ
git push origin main --force

ただし、作業内容も巻き戻ってしまうため注意が必要なようです。必要ならコードは別ファイルにめも(ヴバックアップ)しておきましょう。新規ファイルの場合、pushしたものが消えてしまいましたね…。

共有されているメインブランチ(master/main等)や、他の開発者が作業している可能性のあるブランチでは、git revertを使用した方がよさそうです(要調査)。

git reset --mixedgit reset --hardというもう少し強力なやつもあるようですが、使ったことがないため説明は差し控えたいと思います。

スポンサーリンク

githubのリモートリポジトリを共有用に新規でわける

外注さんなどの都合で、たまにリモートリポジトリを分けたいときがあります。

前提の作業として、github上で新規のリポジトリを作成しておきます。

あとはvscode上で確認します。

git remote -v

紐づけるリモートリポジトリのurlを変更します。

git remote set-url origin https://github.com/USERNAME/REPOSITORY.git

再び確認すると変わっています。

git remote -v

もっと詳しくみたかったら、configファイルを確認します。

cat .git/config

メールアドレスと名前を確認したい場合はこちらのコマンドで。

git config --list

あとはステージング、addはgui上でやって最後はgithubにプッシュしましょう。

スポンサーリンク

GitHUBリポジトリ名変更とVsCodeの対応

GitHUBの対応

変更したいリポジトリを選ぶ > Setting > rename

VsCodeの対応

  1. git remote -v
  2. git remote set-url origin https://github.com/ユーザー名/リポジトリ名.git(リポジトリ名はGitHubのcodeでURLを確認もできます。)
  3. git remote -v

その後、Pushは普通にできます。

スポンサーリンク

GitHUBの複数アカウント

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする