X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;ds=inline;f=pep-git.txt;h=ccbe4376f9065a9f313203b54c3f2ab928e02336;hb=ab68136b8d9ac8da0cc474cfb2a6350e3ae8b79c;hp=e143afc5b6f2f7310760348d86d75a91cde69a5c;hpb=1b200b91a610cd4d595a6e155768e4f2d48a0515;p=git-wiki.git
diff --git a/pep-git.txt b/pep-git.txt
index e143afc..ccbe437 100644
--- a/pep-git.txt
+++ b/pep-git.txt
@@ -14,7 +14,7 @@ Abstract
This Informational PEP collects information about git. There is, of
course, a lot of documentation for git, so the PEP concentrates on
-more complex issues, scenarios and topics.
+more complex issues, scenarios and examples.
The plan is to extend the PEP in the future collecting information
about equivalence of Mercurial and git scenarios to help migrating
@@ -118,7 +118,7 @@ local repo has two branches ``v1`` and ``master``. For most examples
the currently checked out branch is ``master``. That is, it's assumed
you have done something like that::
- $ git clone http://git.python.org/python.git
+ $ git clone https://git.python.org/python.git
$ cd python
$ git branch v1 origin/v1
@@ -132,7 +132,7 @@ remotes/origin/v1 as its upstream remote-tracking branch.
The same result can be achieved with commands::
- $ git clone -b v1 http://git.python.org/python.git
+ $ git clone -b v1 https://git.python.org/python.git
$ cd python
$ git checkout --track origin/master
@@ -181,9 +181,9 @@ fast-forwards, merges or rebases local branches.
When you do an initial clone like this::
- $ git clone -b v1 http://git.python.org/python.git
+ $ git clone -b v1 https://git.python.org/python.git
-git clones remote repository ``http://git.python.org/python.git`` to
+git clones remote repository ``https://git.python.org/python.git`` to
directory ``python``, creates a remote named ``origin``, creates
remote-tracking branches, creates a local branch ``v1``, configure it
to track upstream remotes/origin/v1 branch and checks out ``v1`` into
@@ -841,34 +841,53 @@ Perl and C). In addition to web interface both provide read-only dumb
http access for git (http(s):// URLs).
There are also more advanced web-based development environments that
-include ability to create and manage users and groups, private, group
-and public repositories, and usually include issue trackers, wiki
-pages and other developers tools. Among these environments are
-`Kallithea `_ and `pagure
-`_, both are written in Python; `Gogs
-`_ is written in Go; when its development seemed to
-be stagnated there was a fork `Gitea `_, still
-active.
+include ability to manage users, groups and projects; private, group
+and public repositories; and often include issue trackers, wiki pages,
+pull requests and other tools for development and communication. Among
+these environments are `Kallithea `_ and
+`pagure `_, both are written in Python; pagure was
+written by Fedora developers and is being used to develop some Fedora
+projects. `Gogs `_ is written in Go; there is a fork
+`Gitea `_.
-And last but not least `Gitlab `_. It's the
-most advanced web-based development environment. Written in Ruby,
-community edition is free and open source (MIT license).
+And last but not least `Gitlab `_. It's
+perhaps the most advanced git web-based development environment.
+Written in Ruby, community edition is free and open source (MIT
+license).
From Mercurial to git
=====================
-Mercurial for Git users https://mercurial.selenic.com/wiki/GitConcepts
-
-https://github.com/felipec/git-remote-hg
-
-https://hg-git.github.io/
-
-
-References
-==========
-
-.. []
+There are many tools to convert Mercurial repositories to git. The
+most famous are, perhaps, `hg-git `_ and
+`fast-export `_ (many years ago
+it was known under the name ``hg2git``).
+
+But a better tool, perhaps the best, is `git-remote-hg
+`_. It provides transparent
+bidirectional access (pull and push) to Mercurial repositories from
+git. The author wrote a `comparison of alternatives
+`_
+that seems to be mostly unbiased.
+
+To use git-remote-hg, install or clone it, add to your PATH (or copy
+script ``git-remote-hg`` to a directory that's already in PATH) and
+prepend ``hg::`` to Mercurial URLs. For example::
+
+ $ git clone https://github.com/felipec/git-remote-hg.git
+ $ PATH=$PATH:"`pwd`"/git-remote-hg
+ $ git clone hg::https://hg.python.org/peps/ PEPs
+
+To work with the repository just use regular git commands including
+``git fetch/pull/push``.
+
+To start converting your Mercurial habits to git see the page
+`Mercurial for Git users
+`_ at Mercurial wiki.
+At the second half of the page there is a table that lists
+corresponding Mercurial and git commands. Should work perfectly in
+both directions.
Copyright