著者:Tian Yawen
リンク:https://www.zhihu.com/question/27712995/answer/39946123
出典:
著者がほぼ著作権を所有していることを知っています。商用の転載の場合は、著者に連絡して許可を求め、非商用の転載の場合は、出典を示してください。
コードリポジトリ(リポジトリ)をコンピューターに保存できます。また、Githubサーバーでコードリポジトリをホストすることもできます。デフォルトでは、originはGithubでホストされているローカルコードベースのバージョンを指します。最初にリポジトリと呼ばれるリポジトリをgithubに作成したと仮定します。GithubIDがuser1であるとすると、この時点でのコードベースへのリンクは次のようになります。
https://github.com/user1/repository
ターミナルに入力した場合
git clone https://github.com/user1/repository
次に、gitはgithubでホストされているコードライブラリのコピーをローカルにコピーします。この時点で、リポジトリにcdして次のように入力します。
git remote -v
コンソール出力が表示されます
origin https://github.com/user1/repository.git (fetch)
origin https://github.com/user1/repository.git (push)
也就是说git为你默认创建了一个指向远端代码库的origin
(このアドレスからクローンを作成したため)。ここでは、よく使用するコマンドに連絡しますgit remote add origin 你的GitHub上的地址
。実際、これはリモートウェアハウスのアドレスの手動エイリアスです。
リポジトリをフォークするユーザーuser2がいるとすると、彼のコードベースリンクは次のようになります。
https://github.com/user2/repository
彼がこのクローンをフォローし、コンソールにgit remote -vと入力すると、次の
ように表示されます。
origin https://github.com/user2/repository.git (fetch)
origin https://github.com/user2/repository.git (push)
origin
指している場所がuser2のリモートコードベースのアドレスであることがわかります。user2がリモートポイントをコードベースに追加したい場合は、コンソールに入力できます。
git remote add upstream https://github.com/user1/repository.git
次に、git remote -vをもう一度入力すると、出力は次のようになります。
origin https://github.com/user2/repository.git (fetch)
origin https://github.com/user2/repository.git (push)
upstream https://github.com/user1/repository.git (fetch)
upstream https://github.com/user1/repository.git (push)
user1コードベースを指すアップストリームポインティングを追加しました。これは、ポインティング場所の以前の名前です。要約すると、名前が示すように、originは名前です。Githubでホストされているコードベースのクローンを作成すると、gitはこのリモートコードベースを指すデフォルトのタグを作成します。@陈クライ恩の答えは正確ではありませんorigin指向的是repository,master只是这个repository中默认创建的第一个branch
。当你git push的时候因为origin和master都是默认创建的,所以可以这样省略,但是这个是bad practice,因为当你换一个branch再git push的时候,有时候就纠结了