blob: 8bf5b33c85308bba5162b1914ffc1bf9f4cb82b5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
= git-darcs(1)
== NAME
git-darcs - a bidirectional git - darcs gateway
== SYNOPSIS
git-darcs <command> <options>
== DESCRIPTION
git darcs can convert a darcs repo to a git one, can update such an
existing git repo later, and finally can push back your changes from the
git repo to the darcs one.
A typical workflow is:
----
$ mkdir git-repo
$ cd git-repo
$ git init
$ git darcs add upstream /path/to/darcs-repo
$ git darcs pull upstream
... hack, hack, hack ...
$ git darcs push upstream
----
== GLOBAL OPTIONS
-h, --help::
Display usage.
== COMMANDS
The supported commands are the followings:
add::
This can register a new darcs repo in the git one, so that you
can fetch from it. The syntax is `add nick path [dfe-options]`.
Add any options you want to be passed to darcs-fast-export,
like --encoding=utf-8, or --authors-file AUTHORMAP. Remember
that if AUTHORMAP is not absolute, it will be interpreted
relative to the git repository's root directory.
push::
Transfers your changes created in the current branch back the
darcs one. The syntax is `push nick`.
fetch::
Downloads changes from the darcs repo and updates the
`darcs/<nick>` branch. None of your local branches are updated.
pull::
Calls `fetch` then `git merge` or `git rebase` based on the
`branch.<branchname>.rebase` configuration setting, where `<branchname>`
is the current branch. The default is - just like with `git pull` - is
to `git merge`.
list::
List the name [and location] of each registered darcs repo.
The syntax is `list [-v|--verbose]`.
find-darcs::
Searches for darcs patches matching a SHA1 prefix.
The syntax is `find-darcs <sha1-prefix>`.
find-git::
Searches for git commits matching a darcs patch prefix.
The syntax is `find-git <patch-prefix>`.
== HOOKS
It's possible to automatically run before and after the fetch and the
push subcommand. For example if you want to automatically run `darcs
pull -a` before a `git darcs fetch upstream`:
----
git config git-darcs.upstream.pre-fetch "darcs pull -a --repodir=/path/to/darcs-repo"
----
Or in case you want to automatically `darcs send` all patches after a
`git darcs push upstream`:
----
git config git-darcs.upstream.post-push "darcs send -a --repodir=/path/to/darcs-repo"
----
== SEE-ALSO
*git*(1), *darcs*(1)
|