I've got something I'm working with that, for the lack of a better, I'm
wanting to ensure takes place for a client of mine.
I access the remote repository and grab the code base to modify a web app.
I then have to actually push anything to a branch off that base (*v_bridge*
).
*$> git checkout v_bridge*
{do some work - need to commit & push this to b_000121}
The way the client has defined their 'normal' process (*to which I had no
knowledge*) is as follows:
** normal procedure (defined by client) is usually :*
** git checkout v_bridge*
** git branch b_000121*
** git publish b_000121*
** git checkout b_000121*
** do some work*
** git commit {filename.php}*
** git push origin b_000121*
So, bearing that in mind I just wanted to see what was happening. Checking
the remote revealed as follows:
*$> git remote -v*
*origin [email protected]:/opt/git/lms.git (fetch)*
*origin [email protected]:/opt/git/lms.git (push)*
OK... all good. Checking the specifics for the remote - lots of irrelevant
things here removed for brevity - that everything is setup OK, but of
course I'm 'out of date' on the local server.
*$> git remote show origin*
** remote origin*
* Fetch URL: [email protected]:/opt/git/lms.git*
* Push URL: [email protected]:/opt/git/lms.git*
* HEAD branch: master*
* Remote branches:*
* b_000120 tracked*
* b_000121 tracked*
* b_000122 tracked*
* b_000123 tracked*
* v_bridge tracked*
* Local branches configured for 'git pull':*
* master merges with remote master*
* v_bridge merges with remote v_bridge*
* Local refs configured for 'git push':*
* master pushes to master (up to date)*
* v_bridge pushes to v_bridge (local out of date)*
Checking the local status displays what I've done on the local server.
*$> git status*
*# Changes not staged for commit:*
*# (use "git add/rm <file>..." to update what will be committed)*
*# (use "git checkout -- <file>..." to discard changes in working
directory)*
*#*
*# modified: code.php*
*# deleted: old_code.php*
....
*#*
*# Untracked files:*
*# (use "git add <file>..." to include in what will be committed)*
*#*
*# added_code.php*
*no changes added to commit (use "git add" and/or "git commit -a")*
So after getting the files added, staged and commits finished locally (
*v_bridge*) - client wants changes pushed to '*b_000121*'. For whatever
reason, the '*git push*' operation is confusing the hell out of me... what
operation(s) would get this done without making a mess of things on the
remote:
*$> git push origin b_000121*
*or*
*$> git push remote v_bridge:b_000121*
*or*
*$> git push remote master:b_000121 *
*or*
*$> git push ???*
Ultimately, the goal is ensuring a '*git checkout b_000121*' picks up all
changes committed and pushed correctly by anyone then pulling the source. I
would then sync things locally on this server by checking out and
re-pulling '*b_000121*' for any additional things that arise. Anything I'm
missing or doesn't look correctly thought out?
*The Goal*
1) Get these (*important*) local changes committed to b_000121
2) Ensure all subsequent checkout/pull requests by anyone for b_000121 pick
up all changes correctly
3) Reset the local to b_000121 to track all subsequent work / changes
Thanx SO MUCH in advance for any all input, ideas, constructive
criticisms... it's ALL welcomed and greatly appreciated!
--
Dok
--
You received this message because you are subscribed to the Google Groups "Git
for human beings" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.