I read about how git merge and git rebase operations work , and I think I have a very basic understanding of the difference. I saw the diagrams :-) Despite this, I still do not understand what will be the best of the two to use for my current stream.
My work uses perforce as an SCM system, but I use git locally to track local changes, refactor and a bunch of other interesting things that git can bring to bring to the table. I know that there is already a tool to help work with git and perforce (ex p4-git), but I don’t necessarily want / need this overhead, so I try to make everything as simple as possible. Here is a brief description of my current workflow for creating local git branches and, ultimately, integrating into our main department: [/ p>
I have a master git branch that performs nightly p4 synchronization on our code base. After forced synchronization, I commit all the changes in the main branch. In fact, my master git branch is, in fact, a snapshot of the latest code assigned to our main network.
For the local changes I'm working on, I always create the git branch and checkout this branch while working on this change.
From time to time I want to update my branch to the latest version of the wizard . So far, I just issued the git merge master command to do this, and it works great.
When I’m ready to make a deal with the actual default, I will merge my branch back into the master branch by checking master and issuing git to merge BRANCH and then send using normal perforce commands
, git master # 3 git ? rebase , , mainline ( ) , (, master-newbranch) . ?
, , ?