Simon Hausmann
b1561ee256
Another (potentially life-saving) idea for submit --direct
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-20 23:52:51 +02:00
Simon Hausmann
24f7b53fdd
Had an idea for debugging, record it :)
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-20 23:42:22 +02:00
Simon Hausmann
8a5fc95b43
Specifying --detect-branches is now only needed for the initial clone/sync.
...
Afterwards it's turned on implicitly if more p4 branches than remotes/p4/master
are found.
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-20 23:39:40 +02:00
Simon Hausmann
c1b296b9f1
Added support for git-p4 submit --direct (experimental)
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-20 16:55:05 +02:00
Simon Hausmann
47a130b7bf
Use git format-patch and git apply --apply when extracting patches from git and
...
applying them to a Perforce checkout. This should make it possible to apply git
commits with binary files that cannot be handled by path.
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-20 16:33:21 +02:00
Simon Hausmann
64ffb06a9c
Oops, not only /set/ gitdir on clone, also set it /correctly/ :)
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-20 15:24:01 +02:00
Simon Hausmann
59fa417109
Fix gitdir not being set when cloning. Needed for writing the p4 users cache.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-20 15:15:34 +02:00
Simon Hausmann
b607e71efd
Cache the output of "p4 users" for faster syncs on high latency links.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-20 10:55:54 +02:00
Simon Hausmann
9bda3a8556
Removed unused variable, more cleanups
...
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-19 12:05:40 +02:00
Simon Hausmann
71b112d4a4
More cleanups and speedups for labels and branches
...
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-19 11:54:11 +02:00
Simon Hausmann
d5904674d1
Cleanup/speed up the branch<> file split and removed change range limitation that I added
...
for debugging (oops).
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-19 11:07:32 +02:00
Simon Hausmann
29bdbac1cd
More work on the incremental importing of multiple branches.
...
Improved error detection by checking the exit code of git-fast-import.
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-19 10:23:12 +02:00
Simon Hausmann
8f9b2e082b
Give branches a nice project prefix and don't bail out on clone if we failed
...
to detect the master branch.
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-18 22:13:26 +02:00
Simon Hausmann
4b97ffb1e4
Started rewriting the branch detection, based on "p4 branches" and "p4 branch -o foo".
...
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-18 21:45:23 +02:00
Simon Hausmann
66c6a9b559
Removed unused cache variables.
...
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-18 20:39:38 +02:00
Simon Hausmann
05094f987c
Fix branch setup after initial clone.
...
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-18 20:32:35 +02:00
Simon Hausmann
71bd9bacec
Removed todo item that is implemented :)
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-17 22:22:26 +02:00
Simon Hausmann
ef48f9093c
Added support for git-p4 sync/rebase --with-origin. See git-p4.txt for details :)
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-17 22:17:49 +02:00
Simon Hausmann
48df6fd850
Bite the bullet and automatically convert old style refs/heads/p4 repositories
...
to the new style refs/remotes/p4 branching.
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-17 21:18:53 +02:00
Simon Hausmann
c6d44cb1a1
Changed the default p4 import branch to be refs/remotes/p4/{HEAD,master}
...
instead of refs/heads/p4.
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-17 20:57:05 +02:00
Simon Hausmann
8ead4fda3f
Create the origin based import branch using git update-ref instead of git branch
...
so that it's possible to have the import branch in refs/remotes.
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-17 20:26:58 +02:00
Simon Hausmann
1c9d393d30
Removed ancient and unused code to find the last imported revision from previous imports
...
to use for the current import by looking at the p4 tags. The current approach of using
the log message works better.
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-17 20:15:47 +02:00
Simon Hausmann
8a2820def4
Removed cleantags command. It doesn't have any meaning anymore.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-17 19:44:50 +02:00
Simon Hausmann
463e8af655
Clean up code duplication for revision parsing and fix previous commit to not
...
import into remotes/p4 (yet!).
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-17 09:13:54 +02:00
Simon Hausmann
f9162f6a4c
Always pass a sha1 for the initial parent so that git-fast-import doesn't think
...
it's creating a new branch from itself. It's a sensible error in general but
in the case of incremental imports we have to apply force :)
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-17 09:09:05 +02:00
Simon Hausmann
5c4153e488
Fixing syncing (gitdir discovery / cd) for bare repositories
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-17 07:42:38 +02:00
Simon Hausmann
ca0affe7bb
A little todo note before I forget it :), based on a suggestion from Lars.
...
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-16 13:15:34 +02:00
Simon Hausmann
dc1a93b6dc
Fix calling git-p4 rebase from within a subdirectory (git rebase wants to be in toplevel)
...
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-16 12:12:39 +02:00
Simon Hausmann
c3c4624451
Give a better hint if git-p4 submit fails
...
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-16 09:43:13 +02:00
Simon Hausmann
d336c15835
Added the possibility of skipping patches during git-p4 submit
...
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-16 09:41:46 +02:00
Simon Hausmann
81f2373f89
Make git-p4 work with bare repositories.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-15 23:06:43 +02:00
Simon Hausmann
cd6cc0d318
Fix git-p4 clone //depot/project (head import)
...
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-15 16:15:26 +02:00
Marius Storm-Olsen
95962f318e
Make the command call silent
...
Signed-off-by: Marius Storm-Olsen <marius@trolltech.com>
2007-05-15 16:07:41 +02:00
Simon Hausmann
42890f6291
Converted to unix newlines
...
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-05-15 16:07:02 +02:00
Simon Hausmann
25df95cce4
Make submitting work on Windows.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-05-15 15:15:07 +02:00
Simon Hausmann
caace11112
Make sure all popen calls use binary mode (for Windows) and
...
also make gitBranchExists work on Windows.
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-05-15 15:15:07 +02:00
Simon Hausmann
ac1fde55a7
Added a little .bat wrapper from Marius
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-05-15 14:44:32 +02:00
Simon Hausmann
0848358055
Use the subprocess module instead of popen2 to make it work on Windows.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-05-15 14:27:56 +02:00
Simon Hausmann
a844b7406f
Document some implementation details, for the curious... :)
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-07 20:14:17 +02:00
Simon Hausmann
2835925139
Cleanup, removed the old tagging code
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-01 23:26:19 +02:00
Simon Hausmann
8f8725314d
cleanup, renamed self.globalPrefix to self.depotPath
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-01 23:23:00 +02:00
Simon Hausmann
1c094184da
Micro cleanup
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-01 23:15:48 +02:00
Simon Hausmann
ff5dba20e3
Doc cleanups.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-05-01 18:28:38 +02:00
Simon Hausmann
51a2640afd
Handle patch errors in git-p4 submit better.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-15 09:59:56 +02:00
Simon Hausmann
90865adc01
A new attempt at fixing the child-fast-import-process-not-finished race condition
...
in the clone command
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-15 09:34:15 +02:00
Simon Hausmann
5e80dd4d7e
Slightly improved formatting of the raw_input questions.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-14 16:09:43 +02:00
Simon Hausmann
8b72ca0f76
Removed the old patch apply code from git-p4 submit.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-14 16:05:54 +02:00
Simon Hausmann
f291b4e3d4
Fix the timezone formatting. Now qgit also displays (parses) it correctly.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-14 11:21:50 +02:00
Simon Hausmann
fd4ca86a0b
Print an error message of some sort if git fast-import fails.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-13 22:21:10 +02:00
Simon Hausmann
80b5910fac
Allow for convenient rebasing after git-p4 submit
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-09 12:43:40 +02:00
Simon Hausmann
7243b350b3
Added a simple example of usage to the "documentation" :)
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-08 10:21:56 +02:00
Simon Hausmann
10c3211b81
fix variable usage (oops)
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-08 10:15:47 +02:00
Simon Hausmann
c45b1cfe1e
Fix file determination for #head imports
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-08 10:13:32 +02:00
Simon Hausmann
f9a3a4f796
Added git-p4 clone convenience command
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-08 10:08:26 +02:00
Simon Hausmann
68ed351ab5
Honor --silent for labels
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-08 09:00:55 +02:00
Simon Hausmann
cb53e1f8e9
Turn off potentially slow label detection by default
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-08 00:12:02 +02:00
Simon Hausmann
1f52af6c73
Provide a tree summary after git-p4 rebase
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-08 00:07:02 +02:00
Simon Hausmann
01ce1fe967
Added git-p4 rebase convenience
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-04-07 23:46:50 +02:00
Simon Hausmann
711544b00c
Clean up python class names.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-04-01 15:40:46 +02:00
Simon Hausmann
2a9489c024
Fix "compilation" :)
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-04-01 13:39:39 +02:00
Simon Hausmann
c9b50e6307
Fix the docs for git-p4 submit and turn git-p4 submit --master=foo into
...
simply git-p4 submit mytopicbranch.
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-29 19:15:24 +02:00
Simon Hausmann
a46668faf7
Fix variable usage in tag import
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-28 17:05:38 +02:00
Simon Hausmann
1f4ba1cbfc
Added support for mapping p4 labels to git tags
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-26 22:34:34 +02:00
Simon Hausmann
8910ac0e88
git-p4 debug doesn't need a git repository
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-26 08:18:55 +02:00
Simon Hausmann
e20a9e530a
Don't try to parse any options with git-p4 debug but pass it straight on to p4
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-03-26 00:13:51 +02:00
Simon Hausmann
9863f4055e
Prefer git command over git-command.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-03-24 16:35:05 +01:00
Simon Hausmann
274917a3d6
Minor cosmetic fixlet for the git-p4 submit sync question.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-03-24 09:18:20 +01:00
Simon Hausmann
cb2c9db507
Different versions of p4 have different output for the where command ;(
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-03-24 09:15:11 +01:00
Simon Hausmann
967f72e21b
Use the new incremental import style by default
...
Signed-off-by: Simon Hausmann <shausman@trolltech.com>
2007-03-23 09:30:41 +01:00
Simon Hausmann
9512497bcf
Make it possible to run git-p4 submit from within the git repository
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-23 09:16:07 +01:00
Simon Hausmann
179caebff4
Brand new smart incremental import that doesn't need tags or git repo-config :)
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-03-22 22:17:42 +01:00
Simon Hausmann
569d1bd409
Set the default branch in run, not in the constructor
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-03-22 21:34:16 +01:00
Simon Hausmann
8136a6399c
Helper function to check the existance of a revision
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-03-22 21:27:14 +01:00
Simon Hausmann
6ae8de88f5
Added some helper function(s) to parse the depot path and change number from the log message
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-03-22 21:10:25 +01:00
Simon Hausmann
f5816a5522
Changed the default branch for imports from "master" to "p4"
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-03-22 20:36:28 +01:00
Simon Hausmann
a559b289bd
Changed the format of the imported log message slightly, so that it's easier to parse again.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-03-22 20:27:41 +01:00
Simon Hausmann
e7f0d0d9b9
Removed the .py extension from git-p4 as it's annoying to type every time.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-22 09:15:32 +01:00
Simon Hausmann
53150250b1
Don't show the submit template and the diff first in less but show it in $editor right away
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-03-21 21:04:12 +01:00
Simon Hausmann
2061865005
Make it possible to invoke git-p4 from within subdirectories of a git working tree.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-21 13:05:30 +01:00
Simon Hausmann
1932a6ac7c
Made --apply-as-patch the default for git-p4 submit as it's significantly faster.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-21 11:01:18 +01:00
Simon Hausmann
5d0b6042d4
Fix support for deletions in git-p4 submit when using --apply-as-patch by filtering out deletions in the diff-tree output.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-21 10:57:54 +01:00
Simon Hausmann
04219c04b7
Added experimental but super-fast --apply-as-patch option to git-p4 submit
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-21 10:11:20 +01:00
Simon Hausmann
b4aa8d12b4
Documentation enhancements.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-03-21 08:27:33 +01:00
Simon Hausmann
0b69b46925
Start of the git-p4 documentation.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-20 22:41:00 +01:00
Simon Hausmann
c5fdcbcc20
Removed p4-fast-export and p4-git-sync as they've been integrated into git-p4 now.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-20 22:09:27 +01:00
Simon Hausmann
c715706b15
Fixed the initial version import by getting the file index correct by correctly skipping deleted files.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-20 21:13:49 +01:00
Simon Hausmann
0828ab1403
Added missing "self"s to make the script evaluate correctly.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-20 20:59:30 +01:00
Simon Hausmann
b984733c80
Completely untested "merge" of p4-fast-export.py into git-p4.py
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-20 20:54:23 +01:00
Simon Hausmann
05140f342e
sync-to-perforce is now called submit and fixed the gitdir check a little bit
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-20 18:32:47 +01:00
Simon Hausmann
83dce55af3
Part of the code is copyright by Trolltech ASA.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-19 22:26:36 +01:00
Simon Hausmann
4f5cf76a55
First (untested) attempt at migrating p4-git-sync into the final git-p4 script
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-19 22:25:17 +01:00
Simon Hausmann
c8c3911685
Provide a little bit of help description for the git-p4 "tools".
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-19 21:02:30 +01:00
Simon Hausmann
86949eef40
Start moving the git-p4 tools into one single script.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-19 20:59:12 +01:00
Simon Hausmann
95d27cb75d
Pass the right number of arguments to commit, fixes single-branch imports.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-19 12:04:37 +01:00
Simon Hausmann
09e16455e0
Improved the git dir detection.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-19 11:57:10 +01:00
Simon Hausmann
228d36c92b
Default to interactive syncing
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-16 13:47:46 +01:00
Simon Hausmann
f72537f97e
Use p4 revert ... instead of revert -a ... after submitting, to make sure the p4 checkout is clean.
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-15 19:07:06 +01:00
Simon Hausmann
d566209e7f
Auto-detect the current git branch before submitting back to perforce.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-03-14 23:30:23 +01:00
Simon Hausmann
4d9e5fcea6
Ignore Apple resource files when importing from perforce to git.
...
Signed-off-by: Simon Hausmann <simon@lst.de>
2007-03-14 19:03:16 +01:00
Simon Hausmann
d7873afdf4
Be nice and use /usr/bin/env python for the git-p4 scripts
...
Signed-off-by: Simon Hausmann <hausmann@kde.org>
2007-03-14 17:33:46 +01:00