Simon Hausmann [Thu, 17 May 2007 17:44:50 +0000 (19:44 +0200)]
Removed cleantags command. It doesn't have any meaning anymore.
Simon Hausmann [Thu, 17 May 2007 07:13:54 +0000 (09:13 +0200)]
Clean up code duplication for revision parsing and fix previous commit to not
import into remotes/p4 (yet!).
Simon Hausmann [Thu, 17 May 2007 07:02:45 +0000 (09:02 +0200)]
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 :)
Simon Hausmann [Thu, 17 May 2007 05:42:38 +0000 (07:42 +0200)]
Fixing syncing (gitdir discovery / cd) for bare repositories
Simon Hausmann [Wed, 16 May 2007 11:15:34 +0000 (13:15 +0200)]
A little todo note before I forget it :), based on a suggestion from Lars.
Simon Hausmann [Wed, 16 May 2007 10:12:39 +0000 (12:12 +0200)]
Fix calling git-p4 rebase from within a subdirectory (git rebase wants to be in toplevel)
Simon Hausmann [Wed, 16 May 2007 07:43:13 +0000 (09:43 +0200)]
Give a better hint if git-p4 submit fails
Simon Hausmann [Wed, 16 May 2007 07:41:26 +0000 (09:41 +0200)]
Added the possibility of skipping patches during git-p4 submit
Simon Hausmann [Tue, 15 May 2007 21:06:43 +0000 (23:06 +0200)]
Make git-p4 work with bare repositories.
Simon Hausmann [Tue, 15 May 2007 14:15:26 +0000 (16:15 +0200)]
Fix git-p4 clone //depot/project (head import)
Marius Storm-Olsen [Tue, 15 May 2007 13:51:25 +0000 (15:51 +0200)]
Make the command call silent
Simon Hausmann [Tue, 15 May 2007 14:07:02 +0000 (16:07 +0200)]
Converted to unix newlines
Simon Hausmann [Tue, 15 May 2007 13:15:39 +0000 (15:15 +0200)]
Make submitting work on Windows.
Simon Hausmann [Tue, 15 May 2007 12:57:57 +0000 (14:57 +0200)]
Make sure all popen calls use binary mode (for Windows) and
also make gitBranchExists work on Windows.
Simon Hausmann [Tue, 15 May 2007 12:42:56 +0000 (14:42 +0200)]
Added a little .bat wrapper from Marius
Simon Hausmann [Tue, 15 May 2007 12:31:06 +0000 (14:31 +0200)]
Use the subprocess module instead of popen2 to make it work on Windows.
Simon Hausmann [Mon, 7 May 2007 18:14:17 +0000 (20:14 +0200)]
Document some implementation details, for the curious... :)
Simon Hausmann [Tue, 1 May 2007 21:26:19 +0000 (23:26 +0200)]
Cleanup, removed the old tagging code
Simon Hausmann [Tue, 1 May 2007 21:23:00 +0000 (23:23 +0200)]
cleanup, renamed self.globalPrefix to self.depotPath
Simon Hausmann [Tue, 1 May 2007 21:15:48 +0000 (23:15 +0200)]
Micro cleanup
Simon Hausmann [Tue, 1 May 2007 16:28:38 +0000 (18:28 +0200)]
Doc cleanups.
Simon Hausmann [Sun, 15 Apr 2007 07:59:56 +0000 (09:59 +0200)]
Handle patch errors in git-p4 submit better.
Simon Hausmann [Sun, 15 Apr 2007 07:34:15 +0000 (09:34 +0200)]
A new attempt at fixing the child-fast-import-process-not-finished race condition
in the clone command
Simon Hausmann [Sat, 14 Apr 2007 14:09:43 +0000 (16:09 +0200)]
Slightly improved formatting of the raw_input questions.
Simon Hausmann [Sat, 14 Apr 2007 14:05:54 +0000 (16:05 +0200)]
Removed the old patch apply code from git-p4 submit.
Simon Hausmann [Sat, 14 Apr 2007 09:21:50 +0000 (11:21 +0200)]
Fix the timezone formatting. Now qgit also displays (parses) it correctly.
Simon Hausmann [Fri, 13 Apr 2007 20:21:10 +0000 (22:21 +0200)]
Print an error message of some sort if git fast-import fails.
Simon Hausmann [Mon, 9 Apr 2007 10:43:40 +0000 (12:43 +0200)]
Allow for convenient rebasing after git-p4 submit
Simon Hausmann [Sun, 8 Apr 2007 08:21:56 +0000 (10:21 +0200)]
Added a simple example of usage to the "documentation" :)
Simon Hausmann [Sun, 8 Apr 2007 08:15:47 +0000 (10:15 +0200)]
fix variable usage (oops)
Simon Hausmann [Sun, 8 Apr 2007 08:13:32 +0000 (10:13 +0200)]
Fix file determination for #head imports
Simon Hausmann [Sun, 8 Apr 2007 08:08:26 +0000 (10:08 +0200)]
Added git-p4 clone convenience command
Simon Hausmann [Sun, 8 Apr 2007 07:00:55 +0000 (09:00 +0200)]
Honor --silent for labels
Simon Hausmann [Sat, 7 Apr 2007 22:12:02 +0000 (00:12 +0200)]
Turn off potentially slow label detection by default
Simon Hausmann [Sat, 7 Apr 2007 22:07:02 +0000 (00:07 +0200)]
Provide a tree summary after git-p4 rebase
Simon Hausmann [Sat, 7 Apr 2007 21:46:50 +0000 (23:46 +0200)]
Added git-p4 rebase convenience
Simon Hausmann [Sun, 1 Apr 2007 13:40:46 +0000 (15:40 +0200)]
Minor cleanup
Simon Hausmann [Sun, 1 Apr 2007 11:39:39 +0000 (13:39 +0200)]
Fix "compilation" :)
Simon Hausmann [Thu, 29 Mar 2007 17:15:24 +0000 (19:15 +0200)]
Fix the docs for git-p4 submit and turn git-p4 submit --master=foo into
simply git-p4 submit mytopicbranch.
Simon Hausmann [Wed, 28 Mar 2007 15:05:38 +0000 (17:05 +0200)]
Fix variable usage in tag import
Simon Hausmann [Mon, 26 Mar 2007 20:34:34 +0000 (22:34 +0200)]
Added support for mapping p4 labels to git tags
Simon Hausmann [Mon, 26 Mar 2007 06:18:55 +0000 (08:18 +0200)]
git-p4 debug doesn't need a git repository
Simon Hausmann [Sun, 25 Mar 2007 22:13:51 +0000 (00:13 +0200)]
Don't try to parse any options with git-p4 debug but pass it straight on to p4
Simon Hausmann [Sat, 24 Mar 2007 15:35:05 +0000 (16:35 +0100)]
Prefer git command over git-command.
Simon Hausmann [Sat, 24 Mar 2007 08:18:20 +0000 (09:18 +0100)]
Minor cosmetic fixlet ;-)
Simon Hausmann [Sat, 24 Mar 2007 08:15:11 +0000 (09:15 +0100)]
Different versions of p4 have different output for the where command ;(
Simon Hausmann [Fri, 23 Mar 2007 08:30:41 +0000 (09:30 +0100)]
Use the new incremental import style by default
Simon Hausmann [Fri, 23 Mar 2007 08:16:07 +0000 (09:16 +0100)]
Make it possible to run git-p4 submit from within the git repository
Simon Hausmann [Thu, 22 Mar 2007 21:17:42 +0000 (22:17 +0100)]
Brand new smart incremental import that doesn't need tags or git repo-config :)
Simon Hausmann [Thu, 22 Mar 2007 20:34:16 +0000 (21:34 +0100)]
Set the default branch in run, not in the constructor
Simon Hausmann [Thu, 22 Mar 2007 20:27:14 +0000 (21:27 +0100)]
Helper function to check the existance of a revision
Simon Hausmann [Thu, 22 Mar 2007 20:10:25 +0000 (21:10 +0100)]
Added some helper function(s) to parse the depot path and change number from the log message
Simon Hausmann [Thu, 22 Mar 2007 19:36:28 +0000 (20:36 +0100)]
Changed the default branch for imports from "master" to "p4"
Simon Hausmann [Thu, 22 Mar 2007 19:27:41 +0000 (20:27 +0100)]
Changed the format of the imported log message slightly, so that it's easier to parse again.
Simon Hausmann [Thu, 22 Mar 2007 08:13:01 +0000 (09:13 +0100)]
Get rid of the ugly .py extensions - in everyday usage the .py is annoying :)
Simon Hausmann [Wed, 21 Mar 2007 20:04:12 +0000 (21:04 +0100)]
Don't show the submit template and the diff first in less but show it in $editor right away
Simon Hausmann [Wed, 21 Mar 2007 12:05:30 +0000 (13:05 +0100)]
Allow invocations from within a git working tree
Simon Hausmann [Wed, 21 Mar 2007 10:01:18 +0000 (11:01 +0100)]
I'm feeling adventurous :), make --apply-as-patch the new default because it's sooo much faster.
Simon Hausmann [Wed, 21 Mar 2007 09:57:54 +0000 (10:57 +0100)]
This should make --apply-as-patch work with deletions (fingers crossed :)
Simon Hausmann [Wed, 21 Mar 2007 09:11:20 +0000 (10:11 +0100)]
Added experimental but super-fast --apply-as-patch option to git-p4 submit
Simon Hausmann [Wed, 21 Mar 2007 07:27:33 +0000 (08:27 +0100)]
Some more docs
Simon Hausmann [Tue, 20 Mar 2007 21:41:00 +0000 (22:41 +0100)]
Some docs :)
Simon Hausmann [Tue, 20 Mar 2007 21:09:27 +0000 (22:09 +0100)]
These two scripts have been migrated into git-p4.py now
Simon Hausmann [Tue, 20 Mar 2007 20:13:49 +0000 (21:13 +0100)]
Fixed the initial versioned import
Simon Hausmann [Tue, 20 Mar 2007 19:59:30 +0000 (20:59 +0100)]
Fixed some obvious of missing "self"s :)
Simon Hausmann [Tue, 20 Mar 2007 19:54:23 +0000 (20:54 +0100)]
Completely untested "merge" of p4-fast-export.py into git-p4.py
Simon Hausmann [Tue, 20 Mar 2007 17:32:47 +0000 (18:32 +0100)]
sync-to-perforce is now called submit and fixed the gitdir check a little bit
Simon Hausmann [Mon, 19 Mar 2007 21:26:36 +0000 (22:26 +0100)]
Credit where credit is due. Added Trolltech ASA.
Simon Hausmann [Mon, 19 Mar 2007 21:25:17 +0000 (22:25 +0100)]
First (untested) attempt at migrating p4-git-sync into the final git-p4 script
Simon Hausmann [Mon, 19 Mar 2007 20:02:30 +0000 (21:02 +0100)]
Provide a tiny little bit of help
Simon Hausmann [Mon, 19 Mar 2007 19:59:12 +0000 (20:59 +0100)]
Start moving the git-p4 tools into one single script.
Simon Hausmann [Mon, 19 Mar 2007 11:04:37 +0000 (12:04 +0100)]
Make it work again
Simon Hausmann [Mon, 19 Mar 2007 10:57:07 +0000 (11:57 +0100)]
Try harder to find the git repository
Rocco Rutte [Mon, 19 Mar 2007 09:44:46 +0000 (09:44 +0000)]
hg-reset.py: Print info about tags, too
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Mon, 19 Mar 2007 09:27:37 +0000 (09:27 +0000)]
hg-reset.py: Print details for changed branches only
It doesn't make sense to suggest resetting branch HEADs to their current
value.
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Mon, 19 Mar 2007 09:18:20 +0000 (09:18 +0000)]
License hg-reset.py under GPLv2 as it uses mercurial code
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Mon, 19 Mar 2007 09:05:51 +0000 (09:05 +0000)]
hg-fast-export.py: Fix option presence checking
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Mon, 19 Mar 2007 09:04:42 +0000 (09:04 +0000)]
hg-reset.sh: Helper for partially re-importing from hg
Given a hg revision to reset to, these scripts get the latest changes
per hg branch and print git SHA1. The user then needs to manually reset
branches as needed, tune the state file and can re-import things again.
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Mon, 19 Mar 2007 08:45:42 +0000 (08:45 +0000)]
Add hg2git.py with library routines
Unfortunately, I can't do 'import hg-fast-export' from python itself, so
we need to move some common methods into 'hg2git.py' which is to be used
as a library for common hg->git routines.
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Mon, 19 Mar 2007 08:38:27 +0000 (08:38 +0000)]
Ignore *.pyc files
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Fri, 16 Mar 2007 18:19:08 +0000 (18:19 +0000)]
Replace some references from hg2git to hg-fast-import
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Simon Hausmann [Fri, 16 Mar 2007 12:47:46 +0000 (13:47 +0100)]
Default to interactive syncing
Simon Hausmann [Thu, 15 Mar 2007 18:07:06 +0000 (19:07 +0100)]
Be more strict with Perforce after synching.
Simon Hausmann [Wed, 14 Mar 2007 22:30:23 +0000 (23:30 +0100)]
Auto-detect the current branch
Simon Hausmann [Wed, 14 Mar 2007 18:03:16 +0000 (19:03 +0100)]
Ignore weird apple files :)
Simon Hausmann [Wed, 14 Mar 2007 16:33:46 +0000 (17:33 +0100)]
Be nice and use /usr/bin/env python for the git-p4 scripts
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
Rocco Rutte [Wed, 14 Mar 2007 15:56:57 +0000 (15:56 +0000)]
Use svn_repos_open() for svn-archive.c, too
Without the change, running it does nothing at all here.
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Wed, 14 Mar 2007 15:35:33 +0000 (15:35 +0000)]
Obtain svn_fs_t via svn_repos_open() -> svn_repos_fs()
Without really knowing the svn API, using plain svn_fs_open() complained
about a missing /foo/DB_CONFIG even on fsfs type repos. Use
svn_repos_open() to open the repo and use svn_repos_fs() to get the fs
instead of using svn_fs_open() since even the headers say I wouldn't
want to use it directly... and they're right, obviously. :)
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Wed, 14 Mar 2007 15:19:13 +0000 (15:19 +0000)]
Allow CFLAGS and LDFLAGS to be overwritten on command line
Hardcoding doesn't make sense, after all.
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Wed, 14 Mar 2007 10:56:18 +0000 (10:56 +0000)]
hg-fast-export.sh Use hg-fast-export.py, not dead hg2git.py
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Wed, 14 Mar 2007 10:32:33 +0000 (10:32 +0000)]
hg-fast-export.py: Kill stale usage() and __doc__
Both are obsolete since using the option parser.
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Wed, 14 Mar 2007 10:29:24 +0000 (10:29 +0000)]
Use MIT license, adjust hg2git script names to match fast-export repo style
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Wed, 14 Mar 2007 10:22:52 +0000 (10:22 +0000)]
Merge branch 'master' of git://repo.or.cz/hg2git
* 'master' of git://repo.or.cz/hg2git: (38 commits)
hg2git.py: Only print verification message for branches we have
hg2git.py: Add simple delta revision feed
hg2git.py: Create only leightweight tags
hg2git.py: add -f/--force option to bypass validation checks
hg2git.py: Bail out for certain errors
Add a note about hg's unnamed branches and multiple heads
hg2git.py: For the first revision, feed out full manifest
hg2git.py: Don't complain die for non-existent heads
Remove SHA stability note from readme
hg2git.py: Remove leading/trailing spaces from authormap
hg2git.py: Allow for spaces in authorfile
hg2git.sh: Add usage note that argument order matters
hg2git.sh: Complete --help output's option listing
Basic support for an author map
hg2git.py: Fix typo saving status to headsfile instead of statusfile
hg2git.py: Display our max revision as progress, not tip
hg2git.py: Disable parsing Signef-off-by lines and add -s to enable
Basic support for command line options in hg2git.py
Rename README.txt to hg2git.txt
Only attempt to verify heads hg has, too
...
Rocco Rutte [Wed, 14 Mar 2007 10:13:27 +0000 (10:13 +0000)]
hg2git.py: Only print verification message for branches we have
It's pointless for many branches to print the validation message for the
first revision already; the same counts for incremental runs.
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Wed, 14 Mar 2007 10:02:15 +0000 (10:02 +0000)]
hg2git.py: Add simple delta revision feed
Now we have three methods of feeding out changes
1) full for first revision or
2) thorough delta for merges (compare checksums with all parents) or
3) simple delta else (only got with manifest)
This requires some cleanup so that we have only place where we actually
call the appropriate dumping method.
The export_file_contents() method now also sorts its file list before
writing out anything as this seems to speed up hg data retrival a bit.
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Wed, 14 Mar 2007 08:34:18 +0000 (08:34 +0000)]
hg2git.py: Create only leightweight tags
The annotated tag with commit message summary was primarily only for
debugging.
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Tue, 13 Mar 2007 16:43:20 +0000 (16:43 +0000)]
hg2git.py: add -f/--force option to bypass validation checks
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Rocco Rutte [Tue, 13 Mar 2007 16:31:57 +0000 (16:31 +0000)]
hg2git.py: Bail out for certain errors
New is that we also check for multiple tips having the same branch name,
i.e. no unnamed heads.
Signed-off-by: Rocco Rutte <pdmef@gmx.net>
Simon Hausmann [Tue, 13 Mar 2007 15:36:10 +0000 (16:36 +0100)]
Lots of fixes done together with Paul