0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Git/GitHub】空のリモートリポジトリを作成し、ローカルリポジトリをpushする

Posted at

はじめに

本記事では、ローカルで管理しているGitプロジェクトを、空のリモートリポジトリに初回pushする手順を解説します。

筆者の背景として、PCのフォーマットを予定しており、ローカルのプロジェクトをGitHubにバックアップしたいという意図がありました。そのため、ローカルで管理していたリポジトリをGitHubの空リポジトリへpushし、リモート上に履歴を残すという方法を選びました。

リモートに空のリポジトリを作成する

まず、GitHubのトップページから右上の「+」アイコンをクリックし、「New repository」を選択します。

image.png

遷移先の画面で「Repository name」を入力し、その他の設定(README / .gitignore / LICENSEの追加)はすべてチェックを外したまま「Create repository」を押下してください。

image.png

以下の項目にはチェックを入れないでください:

  • ✅ Add a README file
  • ✅ Add .gitignore
  • ✅ Choose a license

いずれか1つでも追加すると、GitHub側に初回コミットが発生してしまい、ローカルリポジトリとの履歴が食い違ってfatal: refusing to merge unrelated historiesエラーの原因になります。
完全に空のリポジトリを作成することが今回の目的です。


ローカルリポジトリからリモートへpushする

次に、ローカルのGitプロジェクトのルートディレクトリ(.gitフォルダがある場所)に移動し、以下のコマンドを順に実行します。

image.png

# ① リモートリポジトリを origin という名前で登録
git remote add origin https://github.com/your-name/sample-repository.git

# ② ブランチ名を main に変更(必要に応じて)
git branch -M main

# ③ 初回push。ローカルのmainをoriginのmainとして追跡設定
git push -u origin main

補足:Gitコマンドについて

git remote add origin ... について

このコマンドでは、GitHub上のリポジトリURL(https://github.com/...)を**origin**という名称で登録しています。

origin は慣習的な名前ですが、任意の名前にすることも可能です。
例: git remote add backup https://...


git push -u origin main について

この -u--set-upstream)オプションは、

「ローカルの main ブランチと、リモートの origin/main を紐付ける(追跡設定する)」

という意味です。

この設定を行うことで、以降のpushやpullは省略して以下のように実行できます:

git push     # 2回目以降
git pull     # 追跡先からのpull

おわりに

本記事では、ローカルで作成済みのGitプロジェクトを、履歴の衝突なくGitHubに初回pushする方法を紹介しました。

ポイントは、GitHubで空のリポジトリを作成する際に、README / LICENSE / .gitignore を追加しないことです。これにより、ローカルの履歴とリモートの履歴が衝突せず、スムーズにpushできます。


以上です。Gitを使った環境移行やバックアップの参考になれば幸いです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?