git - remote add origin vs remote set-url origin
新しいリポジトリを作成します。
git init
echo "# MESSAGE" >> README.md
git add README.md
git commit -m "first commit"
そして、github上に作成された空のリモートリポジトリにコミットをプッシュしたいので、remoteを設定しなければなりません。
以下のコマンドの違いは何でしょうか?
git remote add origin git@github.com:User/UserRepo.git
git remote set-url origin git@github.com:User/UserRepo.git
最後にpushを行います。
git push -u origin master
編集1:
git initの直後にremote set-url originを実行するとどうなりますか?remote set-url origin は origin を作りますか?もし、git init後にすでにoriginが存在しているのであれば、私のシナリオではこれらのコマンドを使っても違いはありませんよね?
345
3
以下は、新しいリモートを追加するために使用します。
以下は、既存のリモートリポジトリのURLを変更するために使用します。
below は
origin
と-u
で定義されたリモートリポジトリの master ブランチにコードをプッシュします。-u
は現在のローカルブランチをリモートの master ブランチに向けることができます。[Documentation][1]
[1]: https://git-scm.com/docs/git-remote
git remote add origin git@github.com:User/UserRepo.git
を実行すると、origin
という名前の新しいリモートが作成されます。git remote set-url origin git@github.com:User/UserRepo.git
を実行すると、git はorigin
という名前の既存のリモートを検索し、そのリモートリポジトリの URL を変更します。もし git がorigin
という名前のリモートを見つけられなかった場合は、エラーfatal: No such remote 'origin'
を発生させます。新しいリポジトリを作成する場合は、
git remote add origin git@github.com:User/UserRepo.git
を使ってリモートを追加します。新しいリモートを追加するには、ターミナルで、リポジトリが保存されているディレクトリで、
git remote add
コマンドを使います。git remote set-url` コマンドは,既存のリモートリポジトリの URL を変更します.
つまり、基本的には、
remote add
は新しいリモートを追加し、remote set-url
は既存のリモートを更新します。