githubリポジトリのクローンを作成し、ローカルで変更を加えていません。Githubリポジトリは、同じブランチのコミットで前進しました。
- ローカルリポジトリと元のgithubリポジトリの差分を見つけるにはどうすればよいですか?
- 作業コピーと元のgithubリポジトリの違いを見つけるにはどうすればよいですか?
- ローカルリポジトリと同じプロジェクトの別のgithubリポジトリの違いを見つけるにはどうすればよいですか?
githubリポジトリのクローンを作成し、ローカルで変更を加えていません。Githubリポジトリは、同じブランチのコミットで前進しました。
回答:
1)比較するリモートリポジトリを追加します。
git remote add foobar git://github.com/user/foobar.git
2)リモートのローカルコピーを更新します。
git fetch foobar
Fetchは作業コピーを変更しません。
3)ローカルリポジトリのブランチを、追加したリモートと比較します。
git diff master foobar/master
fetch
(nr。2)の代わりに:git remote update
- すべてのブランチセットを更新して、リモートブランチを追跡しますが、変更をマージしません。またはgit pull
あなたの質問への別の返答(マスターにいて、リモートの変更についてリポジトリに認識させるためにすでに「git fetch origin」を実行していると仮定します):
1)ローカルブランチが作成されたときからのリモートブランチでのコミット:
git diff HEAD...origin/master
2)「作業コピー」とは、まだリモートになっていないローカルコミットがあるローカルブランチを意味していると思います。ローカルブランチにあるものの、リモートブランチにはない違いを確認するには、次のコマンドを実行します。
git diff origin/master...HEAD
3)dbyrneによる回答を参照してください。
HEAD..origin/master
構文をありがとう!origin / HEADが存在しないというエラーが発生しましたが、これで解決しました。
git diff HEAD...origin/master
変更を許可されているリモートディレクトリを複製した場合、何も返さないというのはどういう意味ですか?
この例は誰かを助けるかもしれません:
注「origin
」は、リモート「What is on Github」のエイリアスです
注「mybranch
」は、githubと同期しているブランチ「what is local」のエイリアスです-
作成しなかった場合、ブランチ名は「master」です。 1。ただし、mybranch
ブランチ名パラメーターが使用されている場所を示すために別の名前を使用しています。
github上のリモートリポジトリとは正確には何ですか?
$ git remote -v
origin https://github.com/flipmcf/Playground.git (fetch)
origin https://github.com/flipmcf/Playground.git (push)
「同じコードの他のgithubリポジトリ」を追加します-これをフォークと呼びます:
$ git remote add someOtherRepo https://github.com/otherUser/Playground.git
$git remote -v
origin https://github.com/flipmcf/Playground.git (fetch)
origin https://github.com/flipmcf/Playground.git (push)
someOtherRepo https://github.com/otherUser/Playground.git (push)
someOtherRepo https://github.com/otherUser/Playground.git (fetch)
ローカルリポジトリが最新であることを確認します。
$ git fetch
ローカルで一部を変更します。ファイル./foo/bar.pyとしましょう
$ git status
# On branch mybranch
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: foo/bar.py
コミットされていない変更を確認する
$ git diff mybranch
diff --git a/playground/foo/bar.py b/playground/foo/bar.py
index b4fb1be..516323b 100655
--- a/playground/foo/bar.py
+++ b/playground/foo/bar.py
@@ -1,27 +1,29 @@
- This line is wrong
+ This line is fixed now - yea!
+ And I added this line too.
ローカルでコミットします。
$ git commit foo/bar.py -m"I changed stuff"
[myfork 9f31ff7] I changed stuff
1 files changed, 2 insertions(+), 1 deletions(-)
今、私は私のリモート(github上)とは異なります
$ git status
# On branch mybranch
# Your branch is ahead of 'origin/mybranch' by 1 commit.
#
nothing to commit (working directory clean)
これをリモートと比較する-あなたのフォーク:(これはで頻繁に行われますgit diff master origin
)
$ git diff mybranch origin
diff --git a/playground/foo/bar.py b/playground/foo/bar.py
index 516323b..b4fb1be 100655
--- a/playground/foo/bar.py
+++ b/playground/foo/bar.py
@@ -1,27 +1,29 @@
- This line is wrong
+ This line is fixed now - yea!
+ And I added this line too.
(これらをリモートに適用するためのgit push)
リモートブランチとリモートマスターブランチの違いは何ですか?
$ git diff origin/mybranch origin/master
ローカルのものとリモートマスターブランチの違いは何ですか?
$ git diff origin/master
私のものは、同じリポジトリの他の誰かのフォーク、マスターブランチとどう違うのですか?
$git diff mybranch someOtherRepo/master
git fetch
この回答に追加されました。