You can tell Git to track the newly created remote branch simply by using the -u flag with "git push". Let's now look at the opposite scenario: you started a new local branch and now want to publish it on the remote for the first time: $ git push -u origin dev This creates a new local branch with the same name as the remote one - and directly establishes a tracking connection between the two. In that scenario, simply use the -track flag with the "git checkout" command: $ git checkout -track origin/devīranch dev set up to track remote branch dev from origin. You now want to chime in and start working on that topic, too. Let's say one of your colleagues has already started and published a branch on your remote server. When you're starting to work on an existing remote branch There are three main scenarios for creating a tracking connection. Nothing to commit (working directory clean) # and have 1 and 2 different commits each, respectively. # Your branch and 'origin/dev' have diverged, Git tells you about this right in the output for "git status": $ git status This information helps tremendously in staying up-to-date. (b) if, on the other hand, there are 4 commits on the remote branch that you haven't downloaded yet, then your local branch is "4 commits behind" its remote counterpart branch. (a) if you have 2 commits only locally that you haven't pushed to the remote yet, your local branch is "2 commits ahead" of its remote counterpart branch. Git can now inform you about "unpushed" and "unpulled" commits. If new commits are made to the add-letters branch in the remote repo, they won't automatically. Switched to a new branch 'add-letters' When you create a tracking branch, it will automatically be set to the same commit as its remote branch. Even more importantly than being "easier", this also prevents you from making mistakes! git checkout add-letters Branch 'add-letters' set up to track remote branch 'add-letters' from 'origin'. You can simply use the shorthand commands "git pull" and "git push" - instead of having to think about the exact parameters like in "git push origin dev". Pushing and pulling becomes a lot easier. This relationship is invaluable for two reasons: And let's also say that you have set it up to track the "dev" branch on the remote named "origin". Let's say your current local HEAD branch is named "dev". Note that you dont have a style branch anymore, but it knows that it was in the. Why should you set up tracking connections? Branches that start with remotes/origin belong to the the original repository. Your local branch now has a "counterpart" on the remote server. However, when you tell a local branch to "track" a remote branch, you create a connection between these two branches. Download Now for Free What are tracking connections in Git?īy default, branches in Git have nothing to do with each other.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |