On Wed, Nov 20, 2024 at 7:48 PM Marvin Renich <m...@renich.org> wrote: > > * Tony Mechelynck <antoine.mechely...@gmail.com> [241120 04:27]: > > The "official" solution, if the Mercurial server is retired forever, > > is to use git instead, but to at least one of us (me) and possibly > > more, git is so foreign that we would rather explore all other > > possible solutions before resorting to it. This message is written by > > and for this kind of user. > > [snip] > > > Solution 3 : Enable the "gif" extension in Mercurial, learn how to use > > it, and use it to make the official git repository appear like a > > Mercurial repository from where we sit. > > -- The problem here is "learn how to use it" : indeed, the online > > Mercurial help about the git extension is practically nil : here it is > > : > > hg config extensions.git= help git > > git extension - grant Mercurial the ability to operate on Git > > repositories. (EXPERIMENTAL) > > This is currently super experimental. It probably will consume > > your firstborn a la Rumpelstiltskin, etc. > > no commands defined > > That's all. (I've added indentation to separate the lines of output > > even if linebreaks are added in e-mail transit.) To me, such a > > I have, in the past, used the hggit extension > (https://hg-git.github.io/), rather than the git extension. It is > packaged in Debian as mercurial-git. To use it, simply add > «[extensions] hggit = » to your .hgrc, then use git URLs to clone the > repo, e.g. «hg clone git+https://github.com/vim/vim.git». Other than > that, you simply use hg as you normally would. And, it has help. > > Note that the instructions on the website say to also add > hgext.bookmarks= to your .hgrc, but if you read more carefully, it says > this is only needed for hg versions prior to 1.7, which is _very_ old. > I didn't add this and it seems to work fine. > > I just tried the above clone in a fresh VM. It works fine, but it takes > a while to clone, as there are more than 20,000 commits. There is a > progress bar during the download, but when all the commits are > downloaded, there is a long pause without any feedback while the > extension converts the git commits to mercurial. > > ...Marvin
Since I posted the above, I found that my Linux distro includes an hggit package ; so I installed it but didn't yet enable it. Strangely as it may seem, Mercurial regards it as "external" but doesn't need to be told where it is : linux-tuxedo:~/.build/vim/vim-hg # hg --config extensions.hggit= version -v Mercurial Distributed SCM (version 6.8.2) (see https://mercurial-scm.org for more information) Copyright (C) 2005-2024 Olivia Mackall and others This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Enabled extensions: churn internal fetch internal hggit external 1.1.3 (dulwich 0.22.1) mq internal pager internal strip internal linux-tuxedo:~/.build/vim/vim-hg # The part I don't understand in the hggit help is the need to download a separate git clone on my hard drive outside my Mercurial repository of Vim, even though the latter includes the .gitignore and other files needed by git but not by Mercurial. (It also includes, of course, the .hgignore and other files needed by Mercurial but not by git.) I would have thought that, let's say, after having set the "default" remote source to the proper git: URL for the Vim server on github, I could use "hg in" and "hg fetch --switch-parent" on my existing Mercurial repository as usual and that it would list or pull (respectively) any new changesets available on github, converting them to proper Mercurial changesets as it went and committing them as descendants from the existing ones (downloaded from Christian's Mercurial server and before that from Bram's), without the need to rebuild the whole stuff from scratch. I have a hint that the authors of the hggit help are interested mostly in "pushing" to git while I am interested only and exclusively in "pulling" from git in order to "make" from the source thus downloaded successively better Vim executables configured to my will and wish. If I ever feel the need to contribute changes to the source and the runtime files, I will, like in the past, write them as local mq patches and send them to the list in "unified git diff" format as produced by Mercurial even without the hggit extension. Best regards, Tony. -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/vim_dev/CAJkCKXt8RomR2uG26Re9snuxGg%2Ba1e4L9X1Y%3DJ7Xp9r%3DpTZn-g%40mail.gmail.com.