git.git
17 years agoAutomatically operate on a temporary branch, needed for cherry-pick to work when...
Simon Hausmann [Wed, 14 Mar 2007 16:29:46 +0000 (17:29 +0100)]
Automatically operate on a temporary branch, needed for cherry-pick to work when applying changes to

files that are deleted in the future.
Also do some Perforce cleaning

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoLots of bugfixes to p4-git-sync.
Simon Hausmann [Tue, 13 Mar 2007 15:36:10 +0000 (16:36 +0100)]
Lots of bugfixes to p4-git-sync.

Added interactive and dry-run mode.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoFix git-dir option and allow reading log substitutions from a file
Simon Hausmann [Tue, 13 Mar 2007 08:14:45 +0000 (09:14 +0100)]
Fix git-dir option and allow reading log substitutions from a file

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoFirst version of a new script to submit changes back to perforce from git repositories.
Simon Hausmann [Mon, 12 Mar 2007 22:00:34 +0000 (23:00 +0100)]
First version of a new script to submit changes back to perforce from git repositories.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoSplit up the cache commandline options into (command) cache and data cache.
Simon Hausmann [Sat, 10 Mar 2007 20:30:24 +0000 (21:30 +0100)]
Split up the cache commandline options into (command) cache and data cache.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoReduce the number of false "merges" by skipping "branch from" entries in the integrat...
Simon Hausmann [Sat, 10 Mar 2007 20:23:49 +0000 (21:23 +0100)]
Reduce the number of false "merges" by skipping "branch from" entries in the integrated output as well as by ignoring integrations of future (newer) changes.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoMore work on branch detection by implementing changeIsBranchMerge().
Simon Hausmann [Sat, 10 Mar 2007 16:46:49 +0000 (17:46 +0100)]
More work on branch detection by implementing changeIsBranchMerge().

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoMore code cleanups and preparations for more branch detection heuristics.
Simon Hausmann [Sat, 10 Mar 2007 10:46:26 +0000 (11:46 +0100)]
More code cleanups and preparations for more branch detection heuristics.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoMinor code cleanups.
Simon Hausmann [Sat, 10 Mar 2007 09:53:07 +0000 (10:53 +0100)]
Minor code cleanups.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoMake the p4 data/command cache configurable through the --cache-debug commandline...
Simon Hausmann [Sat, 10 Mar 2007 09:25:34 +0000 (10:25 +0100)]
Make the p4 data/command cache configurable through the --cache-debug commandline option.

Signed-off-by: Simon Hausmann <simon@lst.de>
17 years agoFixed p4-debug file extension.
Simon Hausmann [Sat, 10 Mar 2007 08:49:19 +0000 (09:49 +0100)]
Fixed p4-debug file extension.

Signed-off-by: Simon Hausmann <simon@lst.de>
17 years agoChanged --known-branches to take a file as argument instead of a comma separated...
Simon Hausmann [Thu, 8 Mar 2007 20:34:40 +0000 (21:34 +0100)]
Changed --known-branches to take a file as argument instead of a comma separated list.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoWork in progress on detecting branches.
Simon Hausmann [Thu, 8 Mar 2007 20:27:59 +0000 (21:27 +0100)]
Work in progress on detecting branches.

Added a disk-cache p4 output so debugging imports is faster.
Added --known-branches commandline option for pre-defining branches.
Various other fixes...

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoAdjust the output parsing of git name-rev to handle the output of the latest git...
Simon Hausmann [Wed, 7 Mar 2007 18:58:54 +0000 (19:58 +0100)]
Adjust the output parsing of git name-rev to handle the output of the latest git version.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoDon't print a plain newline at the end of the execution (avoids bogus cron error...
Simon Hausmann [Thu, 22 Feb 2007 09:20:53 +0000 (10:20 +0100)]
Don't print a plain newline at the end of the execution (avoids bogus cron error mails).

Signed-off-by: Simon Hausmann <shausman@trolltech.com>
17 years agoMore work in --silent support.
Simon Hausmann [Thu, 22 Feb 2007 08:22:36 +0000 (09:22 +0100)]
More work in --silent support.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoAdded support for --silent so that p4-fast-export can be called from cronjobs.
Simon Hausmann [Thu, 22 Feb 2007 08:03:39 +0000 (09:03 +0100)]
Added support for --silent so that p4-fast-export can be called from cronjobs.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoAdded p4 delete behavioural emulation as todo item.
Simon Hausmann [Wed, 21 Feb 2007 16:51:07 +0000 (17:51 +0100)]
Added p4 delete behavioural emulation as todo item.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoFix single-branch imports by skipping the branch/merge detection correctly.
Simon Hausmann [Sat, 17 Feb 2007 15:18:22 +0000 (01:18 +1000)]
Fix single-branch imports by skipping the branch/merge detection correctly.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoUse sets.Set() instead of set() to run also with older versions of Python.
Simon Hausmann [Wed, 14 Feb 2007 16:16:14 +0000 (02:16 +1000)]
Use sets.Set() instead of set() to run also with older versions of Python.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoMake it possible to specify the p4 changes to import through a text file (for debuggi...
Simon Hausmann [Wed, 14 Feb 2007 16:13:17 +0000 (17:13 +0100)]
Make it possible to specify the p4 changes to import through a text file (for debugging) and made various improvements to the branch/merge heuristic detection.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoWhen trying to map p4 integrations to git merges just record it as a single merge...
Simon Hausmann [Mon, 12 Feb 2007 21:05:21 +0000 (22:05 +0100)]
When trying to map p4 integrations to git merges just record it as a single merge with the newest p4 change as secondary parent.

Signed-off-by: Simon Hausmann <simon@lst.de>
17 years agoSet git fast-import marks for every imported change for future use.
Simon Hausmann [Mon, 12 Feb 2007 20:56:46 +0000 (21:56 +0100)]
Set git fast-import marks for every imported change for future use.

Signed-off-by: Simon Hausmann <simon@lst.de>
17 years agoAfter marking a p4 branch as merged don't ever merge it in git again.
Simon Hausmann [Mon, 12 Feb 2007 20:44:02 +0000 (21:44 +0100)]
After marking a p4 branch as merged don't ever merge it in git again.

Signed-off-by: Simon Hausmann <simon@lst.de>
17 years agoMore fixes in heuristic p4 branch detection based on common path components.
Simon Hausmann [Mon, 12 Feb 2007 20:41:45 +0000 (21:41 +0100)]
More fixes in heuristic p4 branch detection based on common path components.

Signed-off-by: Simon Hausmann <simon@lst.de>
17 years agoStarted work on p4 branch detection (experimental!).
Simon Hausmann [Mon, 12 Feb 2007 20:04:59 +0000 (21:04 +0100)]
Started work on p4 branch detection (experimental!).

Signed-off-by: Simon Hausmann <simon@lst.de>
17 years agoCode cleanups.
Simon Hausmann [Mon, 12 Feb 2007 19:28:58 +0000 (20:28 +0100)]
Code cleanups.

Signed-off-by: Simon Hausmann <simon@lst.de>
17 years agoCleanups, remove unused variable.
Simon Hausmann [Sun, 11 Feb 2007 20:35:34 +0000 (21:35 +0100)]
Cleanups, remove unused variable.

Signed-off-by: Simon Hausmann <simon@lst.de>
17 years agoCreate lightweight git tags (using the "reset" trick) for the incremental import...
Simon Hausmann [Sun, 11 Feb 2007 17:04:39 +0000 (18:04 +0100)]
Create lightweight git tags (using the "reset" trick) for the incremental import instead of full-blown ones. Also fix parsing the output of git name-rev for figuring out the last imported p4 change number.

Signed-off-by: Simon Hausmann <simon@lst.de>
17 years agoAdded a little helper script to remove unused tags from the perforce import.
Simon Hausmann [Sat, 10 Feb 2007 09:26:03 +0000 (10:26 +0100)]
Added a little helper script to remove unused tags from the perforce import.

Signed-off-by: Simon Hausmann <shausman@trolltech.com>
17 years agoChanged the default git import branch from "p4" to "master".
Simon Hausmann [Sat, 10 Feb 2007 09:05:51 +0000 (10:05 +0100)]
Changed the default git import branch from "p4" to "master".

Signed-off-by: Simon Hausmann <simon@lst.de>
17 years agoAvoid the excessive use of git tags for every perforce change and instead just create...
Simon Hausmann [Sat, 10 Feb 2007 09:05:29 +0000 (10:05 +0100)]
Avoid the excessive use of git tags for every perforce change and instead just create one git tag for the last imported change.

Signed-off-by: Simon Hausmann <simon@lst.de>
17 years agoMinor code cleanups.
Simon Hausmann [Sat, 10 Feb 2007 08:25:22 +0000 (09:25 +0100)]
Minor code cleanups.

Signed-off-by: Simon Hausmann <simon@lst.de>
17 years agoAdded a little helper script to debug the output of the p4 python interface.
Simon Hausmann [Thu, 8 Feb 2007 22:00:19 +0000 (23:00 +0100)]
Added a little helper script to debug the output of the p4 python interface.

Signed-off-by: Simon Hausmann <simon@lst.de>
17 years agoMade the name of the git branch used for the perforce import configurable through...
Simon Hausmann [Thu, 8 Feb 2007 14:53:11 +0000 (15:53 +0100)]
Made the name of the git branch used for the perforce import configurable through a new --branch=<name> commandline option.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoCatch io exceptions from git fast-import again and print the error message.
Simon Hausmann [Thu, 8 Feb 2007 14:45:16 +0000 (15:45 +0100)]
Catch io exceptions from git fast-import again and print the error message.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoFix calculation of the newest imported revision for #head imports.
Simon Hausmann [Wed, 7 Feb 2007 22:51:51 +0000 (23:51 +0100)]
Fix calculation of the newest imported revision for #head imports.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoMake specifying the revision ranges more convenient.
Simon Hausmann [Wed, 7 Feb 2007 22:37:54 +0000 (23:37 +0100)]
Make specifying the revision ranges more convenient.

Added support for @all as revision range specifier to import all changes to a given depot path.
Also default to an import of #head if no revrange is specified.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoMake incremental imports easier to use by storing the p4 depot path after an import...
Simon Hausmann [Wed, 7 Feb 2007 22:25:56 +0000 (23:25 +0100)]
Make incremental imports easier to use by storing the p4 depot path after an import in .git/config and re-using it when we're invoked again later.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoFixed incremental imports by using the correct "from" command instead of "merge"...
Simon Hausmann [Wed, 7 Feb 2007 22:09:49 +0000 (23:09 +0100)]
Fixed incremental imports by using the correct "from" command instead of "merge" with git fast-import.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoMinor cleanups and print an error message of git fast-import if it fails.
Simon Hausmann [Wed, 7 Feb 2007 21:57:01 +0000 (22:57 +0100)]
Minor cleanups and print an error message of git fast-import if it fails.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoInitial support for importing a directory from Perforce at a specified revision.
Simon Hausmann [Thu, 1 Feb 2007 17:19:55 +0000 (18:19 +0100)]
Initial support for importing a directory from Perforce at a specified revision.

Use p4 files //depot/path/...@revision to determine the state of the project and create a "fake" git commit from it.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoCode cleanups, move the code to create a commit with fast-import into a separate...
Simon Hausmann [Thu, 1 Feb 2007 16:42:23 +0000 (17:42 +0100)]
Code cleanups, move the code to create a commit with fast-import into a separate function out of the main loop.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoSimplify the incremental import by elimination the need for a temporary import branch.
Simon Hausmann [Thu, 1 Feb 2007 07:23:39 +0000 (08:23 +0100)]
Simplify the incremental import by elimination the need for a temporary import branch.

It turns out that git fast-import can "resume" from an existing branch just fine.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoStarted working on incremental imports from Perforce.
Simon Hausmann [Wed, 31 Jan 2007 23:08:51 +0000 (00:08 +0100)]
Started working on incremental imports from Perforce.

Try to find the last imported p4 change number from the git tags and try to pass the right parent for commits to git fast-import.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoFix file permissions of p4-fast-export.py to be executable.
Simon Hausmann [Wed, 31 Jan 2007 22:09:24 +0000 (23:09 +0100)]
Fix file permissions of p4-fast-export.py to be executable.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoCreate a git tag for every changeset imported from perforce.
Simon Hausmann [Wed, 31 Jan 2007 22:03:01 +0000 (23:03 +0100)]
Create a git tag for every changeset imported from perforce.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoFixed displaying import progress by calling flush on stdout.
Simon Hausmann [Wed, 31 Jan 2007 21:47:53 +0000 (22:47 +0100)]
Fixed displaying import progress by calling flush on stdout.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoPermit calling p4-fast-export with a depot path that has the typical ... wildcard...
Simon Hausmann [Wed, 31 Jan 2007 21:41:08 +0000 (22:41 +0100)]
Permit calling p4-fast-export with a depot path that has the typical ... wildcard at the end.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoAvoid calling fstat for every imported file (slow!) and instead read the file data...
Simon Hausmann [Wed, 31 Jan 2007 21:38:07 +0000 (22:38 +0100)]
Avoid calling fstat for every imported file (slow!) and instead read the file data first into the python process and use the length of the bytes read for the size field of git fast-import.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoPorted the remaining functions that parsed p4 shell output over to the p4 python...
Simon Hausmann [Wed, 31 Jan 2007 21:31:28 +0000 (22:31 +0100)]
Ported the remaining functions that parsed p4 shell output over to the p4 python interface.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoInstead of parsing the output of "p4 users" use the python objects of "p4 -G users".
Simon Hausmann [Wed, 31 Jan 2007 21:19:18 +0000 (22:19 +0100)]
Instead of parsing the output of "p4 users" use the python objects of "p4 -G users".

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoMinor code cleanups and ported some p4 interfacing code over to the p4 python mode.
Simon Hausmann [Wed, 31 Jan 2007 21:13:17 +0000 (22:13 +0100)]
Minor code cleanups and ported some p4 interfacing code over to the p4 python mode.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoChanged the import mechanism to write to git fast-import through a pipe instead of...
Simon Hausmann [Wed, 31 Jan 2007 20:54:56 +0000 (21:54 +0100)]
Changed the import mechanism to write to git fast-import through a pipe instead of having p4-fast-export write to stdout and let the caller connect it to git fast-import.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoRemoved unused p4cat function and added helper function for the perforce python inter...
Simon Hausmann [Wed, 31 Jan 2007 19:48:39 +0000 (20:48 +0100)]
Removed unused p4cat function and added helper function for the perforce python interface (p4Cmd).

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoSpeed up the import of individual files from Perforce into git by passing the output...
Simon Hausmann [Wed, 31 Jan 2007 19:16:26 +0000 (20:16 +0100)]
Speed up the import of individual files from Perforce into git by passing the output of "p4 print" directly to git fast-import. Also try to set the mode of the file in git correctly based on file type heuristics.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoSome fixes to the timezone conversion between the date of a perforce change and the...
Simon Hausmann [Wed, 31 Jan 2007 18:43:16 +0000 (19:43 +0100)]
Some fixes to the timezone conversion between the date of a perforce change and the git commit.

Signed-off-by: Simon Hausmann <hausmann@kde.org>
17 years agoImplemented basic support for converting the date of the perforce change to the git...
Simon Hausmann [Wed, 31 Jan 2007 15:39:46 +0000 (16:39 +0100)]
Implemented basic support for converting the date of the perforce change to the git format. The timezone isn't correctly set up yet though.

Signed-off-by: Simon Hausmann <shausman@trolltech.com>
17 years agoSlightly improved help usage output and made specifying the trailing slash for the...
Simon Hausmann [Wed, 31 Jan 2007 08:49:41 +0000 (09:49 +0100)]
Slightly improved help usage output and made specifying the trailing slash for the depot path optional.

Signed-off-by: Simon Hausmann <shausman@trolltech.com>
17 years agoAdded basic support for specifying the depot path to import from as well as the range...
Simon Hausmann [Wed, 31 Jan 2007 08:39:20 +0000 (09:39 +0100)]
Added basic support for specifying the depot path to import from as well as the range of perforce changes.

Signed-off-by: Simon Hausmann <shausman@trolltech.com>
17 years agoInitial import of a python script to import changesets from Perforce into git.
Simon Hausmann [Tue, 30 Jan 2007 23:16:59 +0000 (00:16 +0100)]
Initial import of a python script to import changesets from Perforce into git.

Signed-off-by: Simon Hausmann <shausman@trolltech.com>