Follow upstream changes -- Bytestring updates
[git-darcs-import.git] / README.git-darcs-import
blob4a98ad0d4cd7e5622f344812d8520a0aa44661c9
1 git-darcs-import
2 Yet another darcs to git converter.
3 (Tested under Linux, unlikely to work under Windows.)
5 Usage
6   # git-darcs-import <source> [<destination>]
8   pulls patches from the source repository and stores them in a git
9   repository in the destination, in the 'git-darcs-import' branch. (If no
10   destination is given, the current directory is used.)
12   The same command can be used to update the destination repository.
14   You should never commit anything to the 'git-darcs-import' branch.
16 To build
17   - you may have to change the path to git in src/Git/Base.hs
18   - autoconf, configure, make git-darcs-import
19   - you can now copy the binary
21 Notes on design and internals
22   - In addition to the git-darcs-import branch, git-darcs-import stores a
23     list of patches together with their id in .git/darcs-inventory.
24   - git does not track directories, while darcs does. To avoid problems
25     with git removing empty directories that darcs still needs, a file
26     '.git-darcs-dir' is created in each subdirectory of the git repository.
27   - git-darcs-import creates an empty commit before processing any darcs
28     patches. this simplifies the handling of commit parents, and allows it to
29     process tags at the very start of a darcs repository
30   - currently git-darcs-import uses a rather strict check to compare
31     repositories -- the destination's inventory must be a /prefix/ of
32     the source's.
34 Random notes
35   - in case of conflicting patches, git's diff will not agree with the
36     original patch - the conflicting changes will be missing.
37   - competition:
38        darcs2git:    http://repo.or.cz/w/darcs2git.git?a=shortlog
39                      uses git-fast-import.
40        darcs-to-git: http://git.sanityinc.com/?p=darcs-to-git.git
41                      born out of frustration over darcs2git:
42                      http://www.sanityinc.com/articles/converting-darcs-repositories-to-git
44 Credits
45   David Roundy and the darcs contributors, for darcs
46   Linus Torvalds, Junio Hamano and the git contributors, for git
48 Enjoy,
50 Bertram Felgenhauer