B-E-A-utiful!

I'll start on this tomorrow!

--Aaron


On Tue, Jun 8, 2010 at 12:52 AM, Benjamin Reed <ran...@opennms.org> wrote:
> On 6/7/10 7:50 PM, Aaron Paxson wrote:
>> All,
>>
>> I've tried to figure this out on my own, and, from time to time, ask
>> in IRC, but I'm just not *gitting* it, if you pardon the pun.
>>
>> I want to maintain my own GIT repository in my company. That is,
>> maintain a bare repo that all my systems can "pull" from and "push" to
>> with our custom code (mostly just custom events, agents, and ticketing
>> code).
>>
>> *BUT* - I still want to "pull" from the opennms git repo for updates,
>> both trunk and stable.
>>
>> Is this even doable in GiT?
>>
>> If so, can someone point me to a handy page, or point me in the right
>> direction? Does anyone else do this?
>>
>> Thanks, and can't wait for 1.8!!
>>
> Yup, as long as both clones are based on the same code, you can push and
> pull around however you want.  I do this sometimes when I want to test
> on another one of my macs at home.  What you want is to have multiple
> "remotes."  A remote is just a git URL that data can be pulled from.  By
> default, "git clone" creates a "remote" called origin.
>
> on your work server:
>  git clone git://opennms.git.sourceforge.net/gitroot/opennms/opennms
> internal-opennms
>
> on your own machine:
>  git clone ssh://internal-machine/path/to/internal-opennms
>  git remote add opennms
> git://opennms.git.sourceforge.net/gitroot/opennms/opennms
>
> ...if you run "git remote" then it should say:
>
>  opennms
>  origin
>
> "origin" is your internal-opennms one, the default, and "opennms" points
> to the upstream opennms repo.
>
> By default, your internal is only going to have master, but you can give
> it 1.8 as well by doing:
>
>  git fetch opennms
>  # create a 1.8 branch based on the "real" opennms 1.8
>  git checkout -b 1.8 opennms/1.8
>  # push to origin (internal) branch called 1.8
>  # if it doesn't exist, it's created
>  git push origin 1.8
>  # converts your 1.8 branch to track origin/1.8 instead of opennms/1.8
> for future pushes
>  # run `git config -l` to see the current setting
>  git config branch.1.8.remote origin
>
> Then your normal workflow would be:
>
>  # work with internal opennms repo
>  <edit files>
>  git add <files>
>  git commit -m 'my changes'
>  git push origin
>
>  # get updates from "real" opennms repo
>  git fetch opennms
>  git merge opennms/master
>  git push origin master
>
>  # get 1.8 updates
>  git fetch opennms
>  git merge opennms/1.8
>  # pushes to origin (internal) 1.8 branch, if you did the `git config`
> above
>  # you could also specify it explicitly: git push origin 1.8
>  git push
>
> --
> Benjamin Reed
> The OpenNMS Group
> http://www.opennms.org/
>
>
>



-- 
Aaron J. Paxson
---------
aaron.pax...@gmail.com
http://aaron.thepaxson5.org

------------------------------------------------------------------------------
ThinkGeek and WIRED's GeekDad team up for the Ultimate 
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
lucky parental unit.  See the prize list and enter to win: 
http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________
Please read the OpenNMS Mailing List FAQ:
http://www.opennms.org/index.php/Mailing_List_FAQ

opennms-devel mailing list

To *unsubscribe* or change your subscription options, see the bottom of this 
page:
https://lists.sourceforge.net/lists/listinfo/opennms-devel

Reply via email to