From: Luke Diamand <luke@diamand.org>
To: git@vger.kernel.org
Cc: "SZEDER Gábor" <szeder.dev@gmail.com>,
"Chen Bin" <chenbin.sh@gmail.com>,
"Miguel Torroja" <miguel.torroja@gmail.com>,
"George Vanburgh" <gvanburgh@bloomberg.net>,
"Merland Romain" <merlorom@yahoo.fr>,
"Vinicius Kursancew" <viniciusalexandre@gmail.com>,
larsxschneider@gmail.com, "Lex Spoon" <lex@lexspoon.org>,
"Johannes Schindelin" <johannes.schindelin@gmx.de>,
"Luke Diamand" <luke@diamand.org>
Subject: [PATCHv2 2/3] git-p4: unshelve into refs/remotes/p4-unshelved, not refs/remotes/p4/unshelved
Date: Mon, 15 Oct 2018 12:14:07 +0100 [thread overview]
Message-ID: <20181015111408.17618-3-luke@diamand.org> (raw)
In-Reply-To: <20181015111408.17618-1-luke@diamand.org>
The branch detection code looks for branches under refs/remotes/p4/...
and can end up getting confused if there are unshelved changes in
there as well. This happens in the function p4BranchesInGit().
Instead, put the unshelved changes into refs/remotes/p4-unshelved/<N>.
Signed-off-by: Luke Diamand <luke@diamand.org>
---
Documentation/git-p4.txt | 6 +++---
git-p4.py | 3 ++-
t/t9832-unshelve.sh | 6 +++---
3 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/Documentation/git-p4.txt b/Documentation/git-p4.txt
index 41780a5aa9..6c0017e36e 100644
--- a/Documentation/git-p4.txt
+++ b/Documentation/git-p4.txt
@@ -174,7 +174,7 @@ $ git p4 submit --update-shelve 1234 --update-shelve 2345
Unshelve
~~~~~~~~
Unshelving will take a shelved P4 changelist, and produce the equivalent git commit
-in the branch refs/remotes/p4/unshelved/<changelist>.
+in the branch refs/remotes/p4-unshelved/<changelist>.
The git commit is created relative to the current origin revision (HEAD by default).
If the shelved changelist's parent revisions differ, git-p4 will refuse to unshelve;
@@ -182,13 +182,13 @@ you need to be unshelving onto an equivalent tree.
The origin revision can be changed with the "--origin" option.
-If the target branch in refs/remotes/p4/unshelved already exists, the old one will
+If the target branch in refs/remotes/p4-unshelved already exists, the old one will
be renamed.
----
$ git p4 sync
$ git p4 unshelve 12345
-$ git show refs/remotes/p4/unshelved/12345
+$ git show p4-unshelved/12345
<submit more changes via p4 to the same files>
$ git p4 unshelve 12345
<refuses to unshelve until git is in sync with p4 again>
diff --git a/git-p4.py b/git-p4.py
index 5701bad06a..76c18a22e9 100755
--- a/git-p4.py
+++ b/git-p4.py
@@ -3956,7 +3956,8 @@ def __init__(self):
]
self.verbose = False
self.noCommit = False
- self.destbranch = "refs/remotes/p4/unshelved"
+ self.destbranch = "refs/remotes/p4-unshelved"
+ self.origin = "p4/master"
def renameBranch(self, branch_name):
""" Rename the existing branch to branch_name.N
diff --git a/t/t9832-unshelve.sh b/t/t9832-unshelve.sh
index 48ec7679b8..c3d15ceea8 100755
--- a/t/t9832-unshelve.sh
+++ b/t/t9832-unshelve.sh
@@ -54,8 +54,8 @@ EOF
cd "$git" &&
change=$(last_shelved_change) &&
git p4 unshelve $change &&
- git show refs/remotes/p4/unshelved/$change | grep -q "Further description" &&
- git cherry-pick refs/remotes/p4/unshelved/$change &&
+ git show refs/remotes/p4-unshelved/$change | grep -q "Further description" &&
+ git cherry-pick refs/remotes/p4-unshelved/$change &&
test_path_is_file file2 &&
test_cmp file1 "$cli"/file1 &&
test_cmp file2 "$cli"/file2 &&
@@ -88,7 +88,7 @@ EOF
cd "$git" &&
change=$(last_shelved_change) &&
git p4 unshelve $change &&
- git diff refs/remotes/p4/unshelved/$change.0 refs/remotes/p4/unshelved/$change | grep -q file3
+ git diff refs/remotes/p4-unshelved/$change.0 refs/remotes/p4-unshelved/$change | grep -q file3
)
'
--
2.19.1.331.gae0ed827e6
next prev parent reply other threads:[~2018-10-15 11:14 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-15 11:14 [PATCHv2 0/3] git-p4: improved unshelving - small fixes Luke Diamand
2018-10-15 11:14 ` [PATCHv2 1/3] git-p4: do not fail in verbose mode for missing 'fileSize' key Luke Diamand
2018-10-15 11:14 ` Luke Diamand [this message]
2018-10-15 11:14 ` [PATCHv2 3/3] git-p4: fully support unshelving changelists Luke Diamand
2018-10-16 4:27 ` [PATCHv2 0/3] git-p4: improved unshelving - small fixes Junio C Hamano
2018-10-24 11:51 ` Luke Diamand
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181015111408.17618-3-luke@diamand.org \
--to=luke@diamand.org \
--cc=chenbin.sh@gmail.com \
--cc=git@vger.kernel.org \
--cc=gvanburgh@bloomberg.net \
--cc=johannes.schindelin@gmx.de \
--cc=larsxschneider@gmail.com \
--cc=lex@lexspoon.org \
--cc=merlorom@yahoo.fr \
--cc=miguel.torroja@gmail.com \
--cc=szeder.dev@gmail.com \
--cc=viniciusalexandre@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).