Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
git_adding_remotes [2019/03/08 11:52] – [Add a new remote] rpjdaygit_adding_remotes [2019/03/08 14:46] (current) – [Fetching the new remote] rpjday
Line 19: Line 19:
 $ git ls-remote https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git $ git ls-remote https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
 </code> </code>
 +
 +Add as a new remote with name ''ln'':
 +
 +<code>
 +$ git remote add ln https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
 +</code>
 +
 +There are no new branches yet:
 +
 +<code>
 +$ git branch -a
 +* master
 +  remotes/origin/HEAD -> origin/master
 +  remotes/origin/master
 +$
 +</code>
 +
 +But we have a new registered remote:
 +
 +<code>
 +$ git remote -v
 +ln https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git (fetch)
 +ln https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git (push)
 +origin https://github.com/torvalds/linux (fetch)
 +origin https://github.com/torvalds/linux (push)
 +$
 +</code>
 +
 +===== Fetching the new remote =====
 +
 +Count the current objects:
 +
 +<code>
 +$ git count-objects -v
 +count: 0
 +size: 0
 +in-pack: 6542717
 +packs: 1
 +size-pack: 2684927
 +prune-packable: 0
 +garbage: 0
 +size-garbage: 0
 +$
 +</code>
 +
 +Fetch:
 +
 +<code>
 +$ git fetch ln
 +remote: Counting objects: 43368, done.
 +remote: Compressing objects: 100% (16663/16663), done.
 +remote: Total 43368 (delta 32248), reused 36955 (delta 26665)
 +Receiving objects: 100% (43368/43368), 36.62 MiB | 23.38 MiB/s, done.
 +Resolving deltas: 100% (32248/32248), done.
 +From https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next
 + * [new branch]                akpm          -> ln/akpm
 + * [new branch]                akpm-base     -> ln/akpm-base
 + * [new branch]                master        -> ln/master
 + * [new branch]                pending-fixes -> ln/pending-fixes
 + * [new branch]                stable        -> ln/stable
 + * [new tag]                   next-20190306 -> next-20190306
 +$
 +</code>
 +
 +Count objects again:
 +
 +<code>
 +$ git count-objects -v
 +count: 0
 +size: 0
 +in-pack: 6586085
 +packs: 2
 +size-pack: 2723617
 +prune-packable: 0
 +garbage: 0
 +size-garbage: 0
 +$
 +</code>
 +
 +Branches:
 +
 +<code>
 +$ git branch -a
 +* master
 +  remotes/ln/akpm
 +  remotes/ln/akpm-base
 +  remotes/ln/master
 +  remotes/ln/pending-fixes
 +  remotes/ln/stable
 +  remotes/origin/HEAD -> origin/master
 +  remotes/origin/master
 +$
 +</code>
 +
 +===== Working with the new remote =====
 +
 +==== Check out a branch ====
 +
 +As long as a branch name is unique across all remotes:
 +
 +<code>
 +$ git checkout akpm
 +Branch 'akpm' set up to track remote branch 'akpm' from 'ln'.
 +Switched to a new branch 'akpm'
 +$
 +</code>
 +
 +<code>
 +$ git branch -vv
 +* akpm   02565b639c3b [ln/akpm] drivers/media/platform/sti/delta/delta-ipc.c: fix read buffer overflow
 +  master 610cd4eadec4 [origin/master] Merge branch 'x86-uv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
 +  $
 +</code>
 +
 +==== Explicitly track a remote branch ====
 +
 +If there is a conflict with branch names:
 +
 +<code>
 +$ git checkout -b lnmaster --track ln/master
 +Branch 'lnmaster' set up to track remote branch 'master' from 'ln'.
 +Switched to a new branch 'lnmaster'
 +$
 +</code>
 +
 +===== Deleting a remote =====
 +
 +<code>
 +$ git fsck --no-reflogs
 +Checking objects: 100% (6708499/6708499), done.
 +Checking connectivity: 6708499, done.
 +$
 +</code>
 +
 +<code>
 +$ git remote remove ln
 +$ git remote
 +origin
 +$
 +</code>
 +
 +
  • git_adding_remotes.1552045977.txt.gz
  • Last modified: 2019/03/08 11:52
  • by rpjday