Этот пример может кому-то помочь:
Обратите внимание: «origin
» - мой псевдоним для удаленного «Что на Github»
Примечание «mybranch
» - мой псевдоним для моей ветки «Что такоеlocal ", который я синхронизирую с github
- ваше ветвление называется 'master', если вы его не создавали.Однако я использую другое имя 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, чтобы применить их кremote)
Чем моя удаленная ветвь отличается от удаленной главной ветки?
$ git diff origin/mybranch origin/master
Чем моя локальная структура отличается от удаленной главной ветки?
$ git diff origin/master
Чем мои вещи отличаются от чужих форков, мастер веток того же репо?
$git diff mybranch someOtherRepo/master