Commit Graph

62 Commits (025fd20606c393b2e0c6476f894cd65260b6b1e7)
 

Author SHA1 Message Date
James Foucar 025fd20606 collab.py: Lots of documentation plus various cleanups & stylistic changes 16 years ago
James Foucar 027f76e15c Fixed spelling errors 16 years ago
Elijah Newren 4110bf0171 Add handling of includes, allow excludes/includes to specify leading path 16 years ago
Elijah Newren 5f0b7a60e4 Add read_content, record_content helper functions to reduce duplicated code 16 years ago
Elijah Newren dc4f1754d1 Add parsing of progress and checkpoint fast-export objects 16 years ago
Elijah Newren 545c3e664e Add parsing of (annotated) tag objects 16 years ago
Elijah Newren 8ff710ce60 print_progress.py: Handle the get_total_commits->get_commit_count rename 16 years ago
Elijah Newren c8adbcdcc0 Allow get_commit_count() to be called with no args beyond the repository 16 years ago
Elijah Newren 223a1fb024 Remove the id_offset from fast_filter
Filtering input from multiple repositories can still be done; however, to
avoid overloading of mark numbers, one should pass --export-marks=<file>
to the first git fast-export and pass --import-marks=<file> to the second.
16 years ago
Elijah Newren 0170a9100a Have all callers of input.readline() be done through _advance_nextline() 16 years ago
Elijah Newren 992cfa11eb Avoid using mark identifiers referred to in an --import-marks file 16 years ago
Elijah Newren f580b3766c Make sure recorded exportmarks and importmarks have identical identifers 16 years ago
Elijah Newren b5adb9cbaf Also default to --branches for fast-export in the {pull,push}-grafts cases 16 years ago
Elijah Newren 1da4c860a3 Record the original_repository too, activate {pull,push}-grafts 16 years ago
Elijah Newren ba2faa9891 Set up restarting for {pull,push}-grafts 16 years ago
Elijah Newren 3c9d232786 Add handling of excludes and includes too 16 years ago
Elijah Newren c855389d40 Refactor collab.py script to prepare for {pull,push}-grafts 16 years ago
Elijah Newren 676bfbdc20 Record the sha1sum-to-mark mappings when doing the initial import 16 years ago
Elijah Newren dcb636d430 Add initial version of collab.py 16 years ago
Elijah Newren 48910ba0dc Rename get_total_commits->get_commit_count, accept rev-list arguments 16 years ago
Elijah Newren 34fdfcf735 Automatically drop commits whose changes are filtered out 16 years ago
Elijah Newren 27e14d199d Make date parsing in git_fast_filter.py handle timezones ahead of UTC too 16 years ago
Elijah Newren 93b961d72b Add a bunch of testcases 16 years ago
Elijah Newren 74e7018f32 Make compare-repos script work with bare repositories too 16 years ago
Elijah Newren 1e4b663420 Have author_date and committer_date be datetime objects 16 years ago
Elijah Newren 92c119699f Streamline common/simple cases to require fewer calls and args 16 years ago
Elijah Newren b16024467e Fix skipping of blob files -- make sure commits don't reference them 16 years ago
Elijah Newren eb5ab5ae67 Duct tape and bailing wire... 16 years ago
Elijah Newren d656fb27ce Splicing repositories and dropping commits require different id renaming 16 years ago
Elijah Newren ef0ad0fad4 Make --all be a default argument for fast-export, not a mandatory argument 16 years ago
Elijah Newren 02bafc21ff Ensure new files from spliced-in commits aren't dropped at merges
git-fast-import requires that file changes listed in a merge commit be
relative to the first parent.  Thus, if I've added new files on a branch
being merged in from the second or later parents, I need to manually
modify the list of files in the merge commit as well.  In order to do that,
as soon as I splice in any commit, I have to record the list of new files
for both that commit and every descendant it has.
16 years ago
Elijah Newren cc2c15c36a Handle adding interleaving commits from separate repositories 16 years ago
Elijah Newren 8984ec4fef Make sure git-fast-import has really finished when we exit
Also, provide an OutputStream class, to make it easy to still direct all
output to some file rather than always sending to git fast-import.
16 years ago
Elijah Newren 17772166cf Add a script for comparing repositories to aid testing 16 years ago
Elijah Newren f856b2d84c Turn off fast-import stat output without squelching all error messages 16 years ago
Elijah Newren 139387d1a4 Make skipping and later dumping easier 16 years ago
Elijah Newren 591d8d4ce5 Add counting of objects, as well as commits 16 years ago
Elijah Newren e149802f83 Make it easier to skip blobs & commits
Automatically do renaming of references to commits that were skipped, and
automatically remove skipped blobs from the output of commits that
reference them.
16 years ago
Elijah Newren 32d680bd9b Work around git-fast-export bug by explicitly specifying --topo-order 16 years ago
Elijah Newren 0ce82837e2 Portability fixes 16 years ago
Elijah Newren eab6741272 Rewrite to not use pyparsing in order to avoid memory madness
pyparsing sucks a whole file into memory at a time and then parses, which
is really bad in this case since the output from git-fast-export is huge.
I entered disk swapping madness pretty easily.  So, now I just do my own
manual parsing.
16 years ago
Elijah Newren acd197044a Small restructurings for the big sierra import
* Allow hooking up (and filtering) multiple git fast-export's to one import
* Allow user callbacks to force dumping of object in order to reference it
  with subsequent inserted objects
* Put the separate callbacks and global vars in the calling program into a
  combined class
16 years ago
Elijah Newren cdaf993d9f Rename 16 years ago
Elijah Newren 17d77abe07 Add get_total_commits() function, finish transition to a module 16 years ago
Elijah Newren 4f7e24351e Fix handling of ids of blobs and commits
My prior handlings of marks would only work if there were not additions
or removals from the fast-export stream.  Further, I referred to these as
marks even though I really only accept idnum values, not sha1s or anything
else.  So, now I refer to these as ids everywhere, and I am much more
careful in my handling of ids.
16 years ago
Elijah Newren b5082769ea Actually call everything_callback as necessary, fix commit_callback
The commit_callback call was trying to pass a Reset object, which was
not defined.  Copy-n-paste-n-forget-to-replace isn't good.  Now it passes
a Commit object.
16 years ago
Elijah Newren c12055b8c9 Rename functions a bit, make filter object creation explicit 16 years ago
Elijah Newren 5cdf2fa053 Pipe output to git-fast-import now to create a new repository 16 years ago
Elijah Newren dfaa65a931 Match git-fast-export spacing after reset commands 16 years ago
Elijah Newren cb81f045a9 Add ability to handle deleted files in commits 16 years ago