Yes , that's right .  Rebasing won't impact the master but will make your 
private branch in sync with the master. And then once you are done with your 
job on your private branch , you could do a merge but that is possible only if 
you have the committer rights else you 'll have to send in your review requests 
in the form of patches and then the relevant person will further push them to 
the master branch .

Thanks,
Pranav

From: Mike Tutkowski [mailto:[email protected]]
Sent: Wednesday, February 13, 2013 3:41 AM
To: Will Stevens
Cc: Pranav Saxena; [email protected]
Subject: Re: Git Branching Question

It does mention pulling in the changes from the parent branch to your branch, 
but that's what we want to do, right?

Looking at Figure 3-29, it appears that master is not impacted, but experiment 
contains the changes from master.

If you wanted master to be equal to experiment, you could then do a merge.  
Otherwise, I think the next checkin to master will cause it to diverge from 
experiment.

On Tue, Feb 12, 2013 at 3:05 PM, Will Stevens 
<[email protected]<mailto:[email protected]>> wrote:
"... pull in the changes FROM the parent branch into your branch..."

On Tue, Feb 12, 2013 at 5:04 PM, Will Stevens 
<[email protected]<mailto:[email protected]>> wrote:
Using rebase will change the parent branch to include the code from your branch 
(Im pretty sure, please correct me if i am wrong).

The method described in my post allows you to code your features in your own 
branch (without modifying the parent branch), but still allows you to pull in 
the changes to the parent branch into your branch periodically.  Only once you 
have finished coding your feature will you want to push it back to the parent 
branch.

Does this make sense?

On Tue, Feb 12, 2013 at 4:58 PM, Mike Tutkowski 
<[email protected]<mailto:[email protected]>> wrote:
They both look like legitimate ways of doing what I need to do.  Is there a 
standard way we do this on CloudStack or maybe it doesn't matter?

On Tue, Feb 12, 2013 at 2:51 PM, Will Stevens 
<[email protected]<mailto:[email protected]>> wrote:
Check this out to better understand how 'rebase' works: 
http://git-scm.com/book/en/Git-Branching-Rebasing


On Tue, Feb 12, 2013 at 4:47 PM, Mike Tutkowski 
<[email protected]<mailto:[email protected]>> wrote:
Great - thanks, Will!

On Tue, Feb 12, 2013 at 2:43 PM, Will Stevens 
<[email protected]<mailto:[email protected]>> wrote:
My post does not cover pushing your final changes back to the storage_refactor 
branch, but when you get to that point you can cross that bridge...

On Tue, Feb 12, 2013 at 4:40 PM, Will Stevens 
<[email protected]<mailto:[email protected]>> wrote:
I actually wrote a blog post which covers this topic pretty well.  It is a very 
trimmed down post to just cover the basics, but it should cover all the basics 
you need:   
http://www.swillops.com/blog/git-branches-manage-third-party-app-customization

Hopefully you will find this helpful...

On Tue, Feb 12, 2013 at 4:10 PM, Mike Tutkowski 
<[email protected]<mailto:[email protected]>> wrote:
I've got another Git question (I've mainly used SVN in the past):

Edison recommended I branch off of his storage_refactor branch for my work 
(which I have done).  He also asked me to pull in changes to my branch from 
storage_refactor every now and then so my branch would not get that out of date 
relative to his.

Is this a good way to do this with Git?

$ git checkout mike_tut_storage_refactor

$ git rebase storage_refactor

To my understanding, this will pull into my branch all the necessary changes 
from his, but will not modify his branch?  Is that true?



Thanks!

On Fri, Feb 8, 2013 at 12:13 PM, Mike Tutkowski 
<[email protected]<mailto:[email protected]>> wrote:
Awesome - thanks, everyone!

On Fri, Feb 8, 2013 at 10:38 AM, Pranav Saxena 
<[email protected]<mailto:[email protected]>> wrote:
Glad that it worked for you . I think ,  what Chip suggested , I guess that is 
usually done if you have committed your changes locally and then  you want to 
shift to another branch else you can directly branch off .

Regards,
Pranav

From: Will Stevens [mailto:[email protected]<mailto:[email protected]>]
Sent: Friday, February 08, 2013 10:47 PM
To: Pranav Saxena
Subject: Re: Git Branching Question

I just did a quick test to verify my knowledge.

Pranav's advice works.

$ mkdir testbed
$ cd testbed/
$ ls -al
    drwxr-xr-x   2 swill  staff    68  8 Feb 12:01 .
    drwxr-xr-x+ 78 swill  staff  2652  8 Feb 12:01 ..
$ mkdir project
$ cd project/
$ git init
    Initialized empty Git repository in /Users/swill/testbed/project/.git/
$ git status
    # On branch master
    #
    # Initial commit
    #
    nothing to commit (create/copy files and use "git add" to track)
$ echo "testing" > testing.txt
$ ls -al
    drwxr-xr-x   4 swill  staff  136  8 Feb 12:02 .
    drwxr-xr-x   3 swill  staff  102  8 Feb 12:01 ..
    drwxr-xr-x  10 swill  staff  340  8 Feb 12:02 .git
    -rw-r--r--   1 swill  staff    8  8 Feb 12:02 testing.txt
$ git status
    # On branch master
    #
    # Initial commit
    #
    # Untracked files:
    #   (use "git add <file>..." to include in what will be committed)
    #
    #     testing.txt
    nothing added to commit but untracked files present (use "git add" to track)
$ git add .
$ git commit -a -m "added testing"
    [master (root-commit) 4f1d81d] added testing
     1 files changed, 1 insertions(+), 0 deletions(-)
     create mode 100644 testing.txt
$ git status
    # On branch master
    nothing to commit (working directory clean)
$ echo "uncommited" > uncommited.txt
$ git status
    # On branch master
    # Untracked files:
    #   (use "git add <file>..." to include in what will be committed)
    #
    #     uncommited.txt
    nothing added to commit but untracked files present (use "git add" to track)
$ git checkout -b my_feature
    Switched to a new branch 'my_feature'
$ git status
    # On branch my_feature
    # Untracked files:
    #   (use "git add <file>..." to include in what will be committed)
    #
    #     uncommited.txt
    nothing added to commit but untracked files present (use "git add" to track)
$ git add .
$ git commit -a -m "the code for my commit"
    [my_feature fa3dfbd] the code for my commit
     1 files changed, 1 insertions(+), 0 deletions(-)
     create mode 100644 uncommited.txt
$ git status
    # On branch my_feature
    nothing to commit (working directory clean)
$ ls -al
    drwxr-xr-x   5 swill  staff  170  8 Feb 12:03 .
    drwxr-xr-x   3 swill  staff  102  8 Feb 12:01 ..
    drwxr-xr-x  13 swill  staff  442  8 Feb 12:05 .git
    -rw-r--r--   1 swill  staff    8  8 Feb 12:02 testing.txt
    -rw-r--r--   1 swill  staff   11  8 Feb 12:03 uncommited.txt
$ git status
    # On branch my_feature
    nothing to commit (working directory clean)
$ git checkout master
    Switched to branch 'master'
$ git status
    # On branch master
    nothing to commit (working directory clean)
$ ls -al
    drwxr-xr-x   4 swill  staff  136  8 Feb 12:06 .
    drwxr-xr-x   3 swill  staff  102  8 Feb 12:01 ..
    drwxr-xr-x  13 swill  staff  442  8 Feb 12:06 .git
    -rw-r--r--   1 swill  staff    8  8 Feb 12:02 testing.txt


On Fri, Feb 8, 2013 at 12:03 PM, Pranav Saxena 
<[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>>
 wrote:
Hey Mike ,

Assuming you have done your changes on the storage-refactor branch but you 
haven't committed or staged them and then you checkout to a new branch (git 
checkout -b "mike_temp" ) , then your changes would still be shown in the new 
branch . You could do a "git status" to verify your list of changes before and 
after you checked out to a new branch.

Regards,
Pranav
-----Original Message-----
From: Mike Tutkowski 
[mailto:[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>]
Sent: Friday, February 08, 2013 9:51 PM
To: 
[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>
Subject: Git Branching Question

Hi everyone,

I'm somewhat new to Git (mainly used SVN).

I am currently working on the storage_refactor branch.  I've added some code 
and changed a little existing code, but not staged or committed it to my local 
repo.

After I added and modified code, I was advised it would be better for me to 
branch from storage_refactor and put my code in that branch (pulling from 
storage_refactor as I go).

My question is this:  With un-tracked files and modified files from the 
storage_refactor branch (again, nothing staged or committed), if I branch from 
storage_refactor, where will my un-tracked files and modified files end up?  
Will they be in my new branch and the storage_refactor branch will look as if I 
never did anything in it (that would be ideal)?

Thanks!

--
*Mike Tutkowski*
*Senior CloudStack Developer, SolidFire Inc.*
e: 
[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>
o: 303.746.7302<tel:303.746.7302><tel:303.746.7302<tel:303.746.7302>>
Advancing the way the world uses the
cloud<http://solidfire.com/solution/overview/?video=play>
*(tm)*



--
Mike Tutkowski
Senior CloudStack Developer, SolidFire Inc.
e: [email protected]<mailto:[email protected]>
o: 303.746.7302<tel:303.746.7302>
Advancing the way the world uses the 
cloud<http://solidfire.com/solution/overview/?video=play>(tm)



--
Mike Tutkowski
Senior CloudStack Developer, SolidFire Inc.
e: [email protected]<mailto:[email protected]>
o: 303.746.7302<tel:303.746.7302>
Advancing the way the world uses the 
cloud<http://solidfire.com/solution/overview/?video=play>(tm)





--
Mike Tutkowski
Senior CloudStack Developer, SolidFire Inc.
e: [email protected]<mailto:[email protected]>
o: 303.746.7302<tel:303.746.7302>
Advancing the way the world uses the 
cloud<http://solidfire.com/solution/overview/?video=play>(tm)




--
Mike Tutkowski
Senior CloudStack Developer, SolidFire Inc.
e: [email protected]<mailto:[email protected]>
o: 303.746.7302<tel:303.746.7302>
Advancing the way the world uses the 
cloud<http://solidfire.com/solution/overview/?video=play>(tm)





--
Mike Tutkowski
Senior CloudStack Developer, SolidFire Inc.
e: [email protected]<mailto:[email protected]>
o: 303.746.7302
Advancing the way the world uses the 
cloud<http://solidfire.com/solution/overview/?video=play>(tm)

Reply via email to