incubator-cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Pranav Saxena <pranav.sax...@citrix.com>
Subject RE: Git Branching Question
Date Wed, 13 Feb 2013 04:49:22 GMT
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:mike.tutkowski@solidfire.com]
Sent: Wednesday, February 13, 2013 3:41 AM
To: Will Stevens
Cc: Pranav Saxena; cloudstack-dev@incubator.apache.org
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 <wstevens@cloudops.com<mailto:wstevens@cloudops.com>>
wrote:
"... pull in the changes FROM the parent branch into your branch..."

On Tue, Feb 12, 2013 at 5:04 PM, Will Stevens <wstevens@cloudops.com<mailto:wstevens@cloudops.com>>
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 <mike.tutkowski@solidfire.com<mailto:mike.tutkowski@solidfire.com>>
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 <wstevens@cloudops.com<mailto:wstevens@cloudops.com>>
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 <mike.tutkowski@solidfire.com<mailto:mike.tutkowski@solidfire.com>>
wrote:
Great - thanks, Will!

On Tue, Feb 12, 2013 at 2:43 PM, Will Stevens <wstevens@cloudops.com<mailto:wstevens@cloudops.com>>
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 <wstevens@cloudops.com<mailto:wstevens@cloudops.com>>
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 <mike.tutkowski@solidfire.com<mailto:mike.tutkowski@solidfire.com>>
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 <mike.tutkowski@solidfire.com<mailto:mike.tutkowski@solidfire.com>>
wrote:
Awesome - thanks, everyone!

On Fri, Feb 8, 2013 at 10:38 AM, Pranav Saxena <pranav.saxena@citrix.com<mailto:pranav.saxena@citrix.com>>
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:wstevens@cloudops.com<mailto:wstevens@cloudops.com>]
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 <pranav.saxena@citrix.com<mailto:pranav.saxena@citrix.com><mailto:pranav.saxena@citrix.com<mailto:pranav.saxena@citrix.com>>>
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:mike.tutkowski@solidfire.com<mailto:mike.tutkowski@solidfire.com><mailto:mike.tutkowski@solidfire.com<mailto:mike.tutkowski@solidfire.com>>]
Sent: Friday, February 08, 2013 9:51 PM
To: cloudstack-dev@incubator.apache.org<mailto:cloudstack-dev@incubator.apache.org><mailto:cloudstack-dev@incubator.apache.org<mailto:cloudstack-dev@incubator.apache.org>>
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: mike.tutkowski@solidfire.com<mailto:mike.tutkowski@solidfire.com><mailto:mike.tutkowski@solidfire.com<mailto:mike.tutkowski@solidfire.com>>
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: mike.tutkowski@solidfire.com<mailto:mike.tutkowski@solidfire.com>
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: mike.tutkowski@solidfire.com<mailto:mike.tutkowski@solidfire.com>
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: mike.tutkowski@solidfire.com<mailto:mike.tutkowski@solidfire.com>
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: mike.tutkowski@solidfire.com<mailto:mike.tutkowski@solidfire.com>
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: mike.tutkowski@solidfire.com<mailto:mike.tutkowski@solidfire.com>
o: 303.746.7302
Advancing the way the world uses the cloud<http://solidfire.com/solution/overview/?video=play>(tm)

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message