git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* [PATCH try2 0/8] Introduce publish tracking branch
@ 2013-10-12  7:05 Felipe Contreras
  2013-10-12  7:05 ` [PATCH try2 7/8] push: add --set-publish option Felipe Contreras
                   ` (7 more replies)
  0 siblings, 8 replies; 11+ messages in thread
From: Felipe Contreras @ 2013-10-12  7:05 UTC (permalink / raw)
  To: git; +Cc: Matthieu Moy, Ramkumar Ramachandra, Felipe Contreras

As it has been discussed before, our support for triangular workflows is
lacking, and the following patch series aims to improve that situation.

We have the concept of upstream branch (e.g. 'origin/master') which is to where
our topic branches eventually should be merged to, so it makes sense that
'git rebase' uses that as the destination, but most people would not push to
such upstream branch, they would push to a publish branch
(e.g.  'github/feature-a'). We could set our upstream to the place we push, and
'git push' would be able to use that as default, and 'git branch --vv' would
show how ahead/behind we are in comparisson to that branch, but then 'git
rebase' (or 'git merge') would be using the wrong branch.

This patch series adds:

 1) git push --set-publish
 2) git branch --set-publish
 3) git branch -vv # uses and shows the publish branch when configured

After this, it becomes much easier to track branches in a triangular workflow.

  master          e230c56 [origin/master, gh/master] Git 1.8.4
* fc/publish      0a105fd [master, gh/fc/publish: ahead 1] branch: display publish branch
  fc/branch/fast  177dcad [master, gh/fc/branch/fast] branch: reorganize verbose options
  fc/trivial      f289b9a [master: ahead 7] branch: trivial style fix
  fc/leaks        d101af4 [master: ahead 2] read-cache: plug a possible leak
  stable          e230c56 Git 1.8.4

Felipe Contreras (8):
  branch: trivial cleanup
  branch: reorganize verbose options
  push: trivial reorganization
  Add concept of 'publish' branch
  branch: allow configuring the publish branch
  t: branch add publish branch tests
  push: add --set-publish option
  branch: display publish branch

 Documentation/git-branch.txt |  11 +++++
 Documentation/git-push.txt   |   9 +++-
 branch.c                     |  43 +++++++++++++++++
 branch.h                     |   2 +
 builtin/branch.c             | 107 +++++++++++++++++++++++++++++++++++++------
 builtin/push.c               |  52 +++++++++++++--------
 remote.c                     |  34 +++++++++++---
 remote.h                     |   4 ++
 t/t3200-branch.sh            |  76 ++++++++++++++++++++++++++++++
 t/t5529-push-publish.sh      |  70 ++++++++++++++++++++++++++++
 t/t6040-tracking-info.sh     |   8 ++--
 transport.c                  |  28 +++++++----
 transport.h                  |   1 +
 13 files changed, 393 insertions(+), 52 deletions(-)
 create mode 100755 t/t5529-push-publish.sh

-- 
1.8.4-fc

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2013-10-13 10:15 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-10-12  7:05 [PATCH try2 0/8] Introduce publish tracking branch Felipe Contreras
2013-10-12  7:05 ` [PATCH try2 7/8] push: add --set-publish option Felipe Contreras
2013-10-13 10:03   ` Eric Sunshine
2013-10-13 10:15     ` Felipe Contreras
2013-10-12  7:05 ` [PATCH try2 6/8] t: branch add publish branch tests Felipe Contreras
2013-10-12  7:05 ` [PATCH try2 4/8] Add concept of 'publish' branch Felipe Contreras
2013-10-12  7:05 ` [PATCH try2 1/8] branch: trivial cleanup Felipe Contreras
2013-10-12  7:05 ` [PATCH try2 2/8] branch: reorganize verbose options Felipe Contreras
2013-10-12  7:05 ` [PATCH try2 3/8] push: trivial reorganization Felipe Contreras
2013-10-12  7:06 ` [PATCH try2 8/8] branch: display publish branch Felipe Contreras
2013-10-12  7:06 ` [PATCH try2 5/8] branch: allow configuring the " Felipe Contreras

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).