X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=pep-git.txt;h=f9cae0363c598689c42138de724a43bd2431f002;hb=5688e11691e873b5f624275b92f7159f3f7c3acf;hp=d485a6fe33309cf287cdc3cedf6a4b53f58bdb27;hpb=3570ae53446a2aa7a24a4112b64a01bfabc29bb5;p=git-wiki.git diff --git a/pep-git.txt b/pep-git.txt index d485a6f..f9cae03 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 @@ -845,24 +845,44 @@ 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; `Gogs -`_ is written in Go; when its development seemed to -be stagnated there was a fork `Gitea `_, still -active. +`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 -perhaps the most advanced web-based development environment. Written -in Ruby, community edition is free and open source (MIT license). +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 +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:: -https://github.com/felipec/git-remote-hg + $ 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 -https://hg-git.github.io/ +To work with the repository just use normal ``git fetch/pull/push`` +commands. + +Mercurial for Git users https://mercurial.selenic.com/wiki/GitConcepts References