<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/git-p4.py, branch v2.16.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.16.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.16.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2017-12-22T21:30:52Z</updated>
<entry>
<title>git-p4: update multiple shelved change lists</title>
<updated>2017-12-22T21:30:52Z</updated>
<author>
<name>Luke Diamand</name>
<email>luke@diamand.org</email>
</author>
<published>2017-12-21T11:06:14Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=8cf422dbf1b4bc14a970b7ff5c5fa555f61dd9ed'/>
<id>urn:sha1:8cf422dbf1b4bc14a970b7ff5c5fa555f61dd9ed</id>
<content type='text'>
--update-shelve can now be specified multiple times on the
command-line, to update multiple shelved changelists in a single
submit.

This then means that a git patch series can be mirrored to a
sequence of shelved changelists, and (relatively easily) kept in
sync as changes are made in git.

Note that Perforce does not really support overlapping shelved
changelists where one change touches the files modified by
another. Trying to do this will result in merge conflicts.

Signed-off-by: Luke Diamand &lt;luke@diamand.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>treewide: correct several "up-to-date" to "up to date"</title>
<updated>2017-08-23T19:17:22Z</updated>
<author>
<name>Martin Ågren</name>
<email>martin.agren@gmail.com</email>
</author>
<published>2017-08-23T17:49:35Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=7560f547e614244fe1d4648598d4facf7ed33a56'/>
<id>urn:sha1:7560f547e614244fe1d4648598d4facf7ed33a56</id>
<content type='text'>
Follow the Oxford style, which says to use "up-to-date" before the noun,
but "up to date" after it. Don't change plumbing (specifically
send-pack.c, but transport.c (git push) also has the same string).

This was produced by grepping for "up-to-date" and "up to date". It
turned out we only had to edit in one direction, removing the hyphens.

Fix a typo in Documentation/git-diff-index.txt while we're there.

Reported-by: Jeffrey Manian &lt;jeffrey.manian@gmail.com&gt;
Reported-by: STEVEN WHITE &lt;stevencharleswhitevoices@gmail.com&gt;
Signed-off-by: Martin Ågren &lt;martin.agren@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>git-p4: filter for {'code':'info'} in p4CmdList</title>
<updated>2017-07-13T17:52:42Z</updated>
<author>
<name>Miguel Torroja</name>
<email>miguel.torroja@gmail.com</email>
</author>
<published>2017-07-13T07:00:35Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=1997e91f4b36649e7e4f693ca9f35c7a6219de8c'/>
<id>urn:sha1:1997e91f4b36649e7e4f693ca9f35c7a6219de8c</id>
<content type='text'>
The function p4CmdList accepts a new argument: skip_info. When set to
True it ignores any 'code':'info' entry (skip_info=False by default).

That allows us to fix some of the tests in t9831-git-p4-triggers.sh
known to be broken with verobse p4 triggers

Signed-off-by: Miguel Torroja &lt;miguel.torroja@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>git-p4: parse marshal output "p4 -G" in p4 changes</title>
<updated>2017-07-13T17:52:40Z</updated>
<author>
<name>Miguel Torroja</name>
<email>miguel.torroja@gmail.com</email>
</author>
<published>2017-07-13T07:00:34Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=b596b3b920208acb775bb632288976377636ccd1'/>
<id>urn:sha1:b596b3b920208acb775bb632288976377636ccd1</id>
<content type='text'>
The option -G of p4 (python marshal output) gives more context about the
data being output. That's useful when using the command "change -o" as
we can distinguish between warning/error line and real change description.

This fixes the case where a p4 trigger for  "p4 change" is set and the command git-p4 submit is run.

Signed-off-by: Miguel Torroja &lt;miguel.torroja@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>git-p4: don't use name-rev to get current branch</title>
<updated>2017-04-17T04:13:26Z</updated>
<author>
<name>Luke Diamand</name>
<email>luke@diamand.org</email>
</author>
<published>2017-04-15T10:36:09Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=eff451101dcdc6fe023861c6c02a9bacc43f372e'/>
<id>urn:sha1:eff451101dcdc6fe023861c6c02a9bacc43f372e</id>
<content type='text'>
git-p4 was using "git name-rev" to find out the current branch.

That is not safe, since if multiple branches or tags point at
the same revision, the result obtained might not be what is
expected.

Instead use "git symbolic-ref".

Signed-off-by: Luke Diamand &lt;luke@diamand.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>git-p4: add read_pipe_text() internal function</title>
<updated>2017-04-17T04:13:24Z</updated>
<author>
<name>Luke Diamand</name>
<email>luke@diamand.org</email>
</author>
<published>2017-04-15T10:36:08Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=78871bf46f18cd92e744a993c1d6422ff30d8bca'/>
<id>urn:sha1:78871bf46f18cd92e744a993c1d6422ff30d8bca</id>
<content type='text'>
The existing read_pipe() function returns an empty string on
error, but also returns an empty string if the command returns
an empty string.

This leads to ugly constructions trying to detect error cases.

Add read_pipe_text() which just returns None on error.

Signed-off-by: Luke Diamand &lt;luke@diamand.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'ls/p4-path-encoding'</title>
<updated>2017-02-16T22:45:12Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-02-16T22:45:12Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5a98255dec1578cc6dc3f25e85d7ea96028687b7'/>
<id>urn:sha1:5a98255dec1578cc6dc3f25e85d7ea96028687b7</id>
<content type='text'>
When "git p4" imports changelist that removes paths, it failed to
convert pathnames when the p4 used encoding different from the one
used on the Git side.  This has been corrected.

* ls/p4-path-encoding:
  git-p4: fix git-p4.pathEncoding for removed files
</content>
</entry>
<entry>
<title>git-p4: fix git-p4.pathEncoding for removed files</title>
<updated>2017-02-10T22:33:13Z</updated>
<author>
<name>Lars Schneider</name>
<email>larsxschneider@gmail.com</email>
</author>
<published>2017-02-09T15:06:56Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a8b05162e894b88aeb7d5064daba07e1a4f58463'/>
<id>urn:sha1:a8b05162e894b88aeb7d5064daba07e1a4f58463</id>
<content type='text'>
In a9e38359e3 we taught git-p4 a way to re-encode path names from what
was used in Perforce to UTF-8. This path re-encoding worked properly for
"added" paths. "Removed" paths were not re-encoded and therefore
different from the "added" paths. Consequently, these files were not
removed in a git-p4 cloned Git repository because the path names did not
match.

Fix this by moving the re-encoding to a place that affects "added" and
"removed" paths. Add a test to demonstrate the issue.

Signed-off-by: Lars Schneider &lt;larsxschneider@gmail.com&gt;
Reviewed-by: Luke Diamand &lt;luke@diamand.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'gv/mingw-p4-mapuser'</title>
<updated>2017-02-02T21:36:55Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2017-02-02T21:36:55Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a482cf446f2ced7fdd67faa2b3a55bfd5caf7d58'/>
<id>urn:sha1:a482cf446f2ced7fdd67faa2b3a55bfd5caf7d58</id>
<content type='text'>
"git p4" did not work well with multiple git-p4.mapUser entries on
Windows.

* gv/mingw-p4-mapuser:
  git-p4: fix git-p4.mapUser on Windows
</content>
</entry>
<entry>
<title>git-p4: fix git-p4.mapUser on Windows</title>
<updated>2017-01-30T17:05:09Z</updated>
<author>
<name>George Vanburgh</name>
<email>gvanburgh@bloomberg.net</email>
</author>
<published>2017-01-25T09:17:29Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=c3c2b057767c037b32a276e14bf563383ce82e39'/>
<id>urn:sha1:c3c2b057767c037b32a276e14bf563383ce82e39</id>
<content type='text'>
When running git-p4 on Windows, with multiple git-p4.mapUser entries in
git config - no user mappings are applied to the generated repository.

Reproduction Steps:

1. Add multiple git-p4.mapUser entries to git config on a Windows
   machine
2. Attempt to clone a p4 repository

None of the user mappings will be applied.

This issue is actually caused by gitConfigList, using split(os.linesep)
to convert the output of git config --get-all into a list. On Windows,
os.linesep is equal to '\r\n' - however git.exe returns configuration
with a line seperator of '\n'.

This leads to the list returned by gitConfigList containing only one
element - which contains the full output of git config --get-all in
string form, which causes problems for the code introduced to
getUserMapFromPerforceServer in 10d08a149d ("git-p4: map a P4 user to
Git author name and email address", 2016-03-01)

This issue should be caught by the test introduced in 10d08a1, however
would require running on Windows to reproduce.

Using splitlines solves this issue, by splitting config on all
typical delimiters ('\n', '\r\n' etc.)

Signed-off-by: George Vanburgh &lt;gvanburgh@bloomberg.net&gt;
Reviewed-by: Luke Diamand &lt;luke@diamand.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
