diff --git a/DESIGN.txt b/DESIGN.txt index 7edcbdd2ef2fee2572c86bcb6c4c3fffd52ab242_REVTSUdOLnR4dA==..1ec00e2805fb0558bdc54b2b7f5ac397401f7d80_REVTSUdOLnR4dA== 100644 --- a/DESIGN.txt +++ b/DESIGN.txt @@ -63,7 +63,3 @@ And you should see output like this: . # Ran 1 tests, 0 skipped, 0 failed. - -Note that due to limitations of Dulwich at the moment, the tests need to -start a git-daemon process. Right now, they use the default port, so will -skip if they detect an already-running git-daemon. diff --git a/README.md b/README.md index 7edcbdd2ef2fee2572c86bcb6c4c3fffd52ab242_UkVBRE1FLm1k..1ec00e2805fb0558bdc54b2b7f5ac397401f7d80_UkVBRE1FLm1k 100644 --- a/README.md +++ b/README.md @@ -74,11 +74,11 @@ That will pull down any commits that have been pushed to the server in the meantime and give you a new head that you can merge in. -Hg-Git can also be used to convert a Mercurial repository to Git. As -Dulwich doesn't support local repositories yet, the easiest way is to -setup up a local SSH server. Then use the following commands to -convert the repository (it assumes your running this in $HOME). +Hg-Git can also be used to convert a Mercurial repository to Git. You can use +a local repository or a remote repository accessed via SSH, HTTP or HTTPS. Use +the following commands to convert the repository (it assumes your running this +in $HOME). $ mkdir git-repo; cd git-repo; git init; cd .. $ cd hg-repo $ hg bookmarks hg @@ -81,8 +81,8 @@ $ mkdir git-repo; cd git-repo; git init; cd .. $ cd hg-repo $ hg bookmarks hg - $ hg push git+ssh://localhost:git-repo + $ hg push ../git-repo The hg bookmark is necessary to prevent problems as otherwise hg-git pushes to the currently checked out branch confusing Git. This will diff --git a/hggit/help/git.rst b/hggit/help/git.rst index 7edcbdd2ef2fee2572c86bcb6c4c3fffd52ab242_aGdnaXQvaGVscC9naXQucnN0..1ec00e2805fb0558bdc54b2b7f5ac397401f7d80_aGdnaXQvaGVscC9naXQucnN0 100644 --- a/hggit/help/git.rst +++ b/hggit/help/git.rst @@ -14,4 +14,5 @@ http://code.google.com/p/guava-libraries ssh://git@github.com:schacon/hg-git.git git://github.com/schacon/hg-git.git + ../hg-git (local file path) @@ -17,5 +18,6 @@ -For protocols other than git://, it isn't clear whether these should be -interpreted as Mercurial or Git URLs. Thus, to specify that a URL should +For the HTTP, HTTPS, and SSH protocols, it isn't clear based solely on +the URL whether the remote repository should be treated as a Mercurial +repository or a Git repository. Thus, to specify that a URL should use Git, prepend the URL with "git+". For example, an HTTPS URL would start with "git+https://". Also, note that Git doesn't require the @@ -20,6 +22,8 @@ use Git, prepend the URL with "git+". For example, an HTTPS URL would start with "git+https://". Also, note that Git doesn't require the -specification of the protocol for SSH, but Mercurial does. +specification of the protocol for SSH, but Mercurial does. Hg-Git +automatically detects whether file paths should be treated as Git repositories +by their contents. If you are starting from an existing Hg repository, you have to set up a Git repository somewhere that you have push access to, add a path entry @@ -72,9 +76,3 @@ Revsets are accepted by several Mercurial commands for specifying revisions. See ``hg help revsets`` for details. - -Limitations ------------ - -- Cloning/pushing/pulling local Git repositories is not supported (due to - lack of support in Dulwich)