[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Doc: CG: push to staging with rebase not merge (issue 292370043 by addre
From: |
paulwmorris |
Subject: |
Doc: CG: push to staging with rebase not merge (issue 292370043 by address@hidden) |
Date: |
Tue, 12 Apr 2016 20:55:48 +0000 |
Reviewers: ,
Message:
Please review, thanks. -Paul
Description:
Doc: CG: push to staging with rebase not merge
Use 'git pull -r' for consistency with other
parts of the CG.
Please review this at https://codereview.appspot.com/292370043/
Affected files (+21, -8 lines):
M Documentation/contributor/source-code.itexi
Index: Documentation/contributor/source-code.itexi
diff --git a/Documentation/contributor/source-code.itexi
b/Documentation/contributor/source-code.itexi
index
b961a82cf6c65897090fd5736731974ac19096b4..a96a408fdd169a743ea9c23542d02589fe17f263
100644
--- a/Documentation/contributor/source-code.itexi
+++ b/Documentation/contributor/source-code.itexi
@@ -2288,11 +2288,18 @@ end up in master after all, defeating the purpose
of the system. The
proper fix usually involves rewriting the staging branch and is best
left to core developers after discussion on the developer list.
+Before pushing to staging it is a good practice to check whether
+staging is ahead of master, and if so, wait until master has caught up
+with staging before pushing. This simplifies things if changes to
+staging have to be backed out for some reason. You can check whether
+master has caught up with staging by looking at the git web interface
+on savannah.
+
@subsubheading If your work is in a patch file
Assuming that your patch is in a file called
address@hidden, and you are currently on git master,
-do:
address@hidden (see @ref{Patches}), and you are currently
+on git master, do:
@example
git checkout staging
@@ -2310,20 +2317,26 @@ commit ahead of @code{origin/staging}.}
@subsubheading If your work is in a branch
-If you are working on branches and your work in is
+If you are working on branches and your work is in
@code{my_branch_name}, then do:
@example
-git checkout staging
-git pull -r
-git merge my_branch_name
+git checkout my_branch_name
+git pull -r origin staging
address@hidden example
+
+This will rebase your branch on @code{origin/staging}. At this point
+git will let you know if there are any conflicts. If so, resolve them
+before continuing:
+
address@hidden
gitk
-git push origin staging
+git push origin HEAD:staging
@end example
@warning{Do not skip the @command{gitk} step; a quick 5-second
check of the visual history can save a great deal of frustration
-later on. You should see that @code{staging} is only ahead of
+later on. You should see that @code{my_branch_name} is only ahead of
@code{origin/staging} by the commits from your branch.}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Doc: CG: push to staging with rebase not merge (issue 292370043 by address@hidden),
paulwmorris <=