Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-27 Fir de Conversatie Christian Brabandt
On Do, 27 Aug 2015, Markus Heidelberg wrote:

 The git repository doesn't need it and you can't even test the .hgignore
 file in the git repository for correct syntax. There might be subtle
 differences, I don't know exactly. I think this is best be left to the
 HG mirror to convert .gitignore to .hgignore because it is VCS specific.

For now I leave the .hgignore file from the old repository. I don't 
expect many changes, so I don't think I need to convert the gitignore 
file to hgignore.

Best,
Christian
-- 
Dringt durch des Aberglaubens Nacht,
Die euch zu finstern Köpfen macht.
-- Christian Fürchtegott Gellert (Der Freigeist)

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-26 Fir de Conversatie Ben Fritz
On Tuesday, August 25, 2015 at 12:55:29 PM UTC-5, Markus Heidelberg wrote:
 Am Dienstag, 25. August 2015, 17:42:26 schrieb Christian Brabandt:
  
  Did the .gitignore file change between the old googlecode repository and 
  the new github repository? I get a modification here:
  
  diff --git a/.gitignore b/.gitignore
  --- a/.gitignore
  +++ b/.gitignore
  @@ -1,5 +1,3 @@
  -# This is .gitignore
  -
   # Unixen: object and executable files.
   *.o
   src/vim
 
 While rewriting history during Git repo cleanup I took the opportunity
 to replace the .hgignore with .gitignore, so that even if you go back in
 time you benefit from the ignore list.
 
 I removed the HG specific syntax: glob and subsequent blank line
 without adding this comment, which originates from the .gitignore in the
 HG repo.
 
  I can commit it in the mirror or you can fix it in the original ;)
 
 This wouldn't be a fix :)

Since we have an hg mirror, how about keeping both files?

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-25 Fir de Conversatie Markus Heidelberg
Am Dienstag, 25. August 2015, 17:42:26 schrieb Christian Brabandt:
 
 Did the .gitignore file change between the old googlecode repository and 
 the new github repository? I get a modification here:
 
 diff --git a/.gitignore b/.gitignore
 --- a/.gitignore
 +++ b/.gitignore
 @@ -1,5 +1,3 @@
 -# This is .gitignore
 -
  # Unixen: object and executable files.
  *.o
  src/vim

While rewriting history during Git repo cleanup I took the opportunity
to replace the .hgignore with .gitignore, so that even if you go back in
time you benefit from the ignore list.

I removed the HG specific syntax: glob and subsequent blank line
without adding this comment, which originates from the .gitignore in the
HG repo.

 I can commit it in the mirror or you can fix it in the original ;)

This wouldn't be a fix :)

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-25 Fir de Conversatie Christian Brabandt
On Do, 20 Aug 2015, Bram Moolenaar wrote:

 I have done the for real update of the Vim repository.
 I used the same sequence of commands as for the tryout, thus the result
 should be the same.

Did the .gitignore file change between the old googlecode repository and 
the new github repository? I get a modification here:

diff --git a/.gitignore b/.gitignore
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,3 @@
-# This is .gitignore
-
 # Unixen: object and executable files.
 *.o
 src/vim

I can commit it in the mirror or you can fix it in the original ;)

Best,
Christian
-- 
Das ganze Leben besteht aus
  Wollen und Nichtvollbringen,
  Vollbringen und Nichtwollen.
-- Goethe, Maximen und Reflektionen, Nr. 694

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-25 Fir de Conversatie Christian Brabandt
On Di, 25 Aug 2015, Christian Brabandt wrote:

 On Do, 20 Aug 2015, Bram Moolenaar wrote:
 
  I have done the for real update of the Vim repository.
  I used the same sequence of commands as for the tryout, thus the result
  should be the same.
 
 Did the .gitignore file change between the old googlecode repository and 
 the new github repository? I get a modification here:
 
 diff --git a/.gitignore b/.gitignore
[...]

I just commit the change. No need to change anything in the official 
repo.

Best,
Christian
-- 
Wie man sein Kind nicht nennen sollte: 
  Dick Tator   

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-25 Fir de Conversatie Bram Moolenaar

Christian Brabandt wrote:

 On Do, 20 Aug 2015, Bram Moolenaar wrote:
 
  I have done the for real update of the Vim repository.
  I used the same sequence of commands as for the tryout, thus the result
  should be the same.
 
 Did the .gitignore file change between the old googlecode repository and 
 the new github repository? I get a modification here:
 
 diff --git a/.gitignore b/.gitignore
 --- a/.gitignore
 +++ b/.gitignore
 @@ -1,5 +1,3 @@
 -# This is .gitignore
 -
  # Unixen: object and executable files.
  *.o
  src/vim
 
 I can commit it in the mirror or you can fix it in the original ;)

That was changed by the git cleanup script that Markus created.

-- 
Citizens are not allowed to attend a movie house or theater nor ride in a
public streetcar within at least four hours after eating garlic.
[real standing law in Indiana, United States of America]

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-21 Fir de Conversatie Marvin Renich
* Bram Moolenaar b...@moolenaar.net [150821 14:59]:
 Looks like most things are ready, I'll soon announce that GitHub is
 ready for our business.
 
 What remains to be filled in is the section Moving over to github - if
 you have local changes on http://www.vim.org/movetogithub.php
 Who has a good text for that?

There was a longish thread on debian-devel a while back (I can't find it
right now) about using github for development.  One of the points raised
was that if you accept github pull requests (from their web UI), then
those developers who do not have (and perhaps do not wish to get) github
accounts cannot participate.  If you disallow github pull requests and
only accept git PRs (perhaps with a dedicated mailing list), than anyone
can participate.

I have never used the github UI, so I don't know how true this is, and I
may have misunderstood what the problems were, but it is at least
something to consider.

...Marvin

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-21 Fir de Conversatie Bram Moolenaar

Marvin Reply wrote:

 There was a longish thread on debian-devel a while back (I can't find it
 right now) about using github for development.  One of the points raised
 was that if you accept github pull requests (from their web UI), then
 those developers who do not have (and perhaps do not wish to get) github
 accounts cannot participate.  If you disallow github pull requests and
 only accept git PRs (perhaps with a dedicated mailing list), than anyone
 can participate.
 
 I have never used the github UI, so I don't know how true this is, and I
 may have misunderstood what the problems were, but it is at least
 something to consider.

The idea is that all events on GitHub are forwarded to the vimdev
maillist.  Christian had setup something for that.  I believe this also
applies to pull requests.

I indeed prefer to discuss changes on the maillist, since everybody can
join and it keeps everything in one place.  I also plan to keep
including patches as before, not directly using the pull request.

We'll see how it goes.

-- 
VOICE OVER: As the horrendous Black Beast lunged forward, escape for Arthur
and his knights seemed hopeless,  when, suddenly ... the animator
suffered a fatal heart attack.
ANIMATOR:   Agh!
VOICE OVER: The cartoon peril was no more ... The Quest for Holy Grail could
continue.
 Monty Python and the Holy Grail PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-21 Fir de Conversatie Bram Moolenaar

Christian Brabandt wrote:

 On Do, 20 Aug 2015, Christian Brabandt wrote:
 
  On Do, 20 Aug 2015, Bram Moolenaar wrote:
  
   http://www.vim.org/develop.php
 
 also, I think sources.php needs to be adjusted as well.

Looks like most things are ready, I'll soon announce that GitHub is
ready for our business.

What remains to be filled in is the section Moving over to github - if
you have local changes on http://www.vim.org/movetogithub.php
Who has a good text for that?

-- 
When I die, I want a tombstone that says GAME OVER - Ton Richters

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-21 Fir de Conversatie Bram Moolenaar

Christian Brabandt wrote:

 On Do, 20 Aug 2015, Christian Brabandt wrote:
 
  On Do, 20 Aug 2015, Bram Moolenaar wrote:
  
   http://www.vim.org/develop.php
 
 also, I think sources.php needs to be adjusted as well.

Yes, I'll do that.

-- 
BEDEVERE:  Oh!
LAUNCELOT: No Arrggghhh ...  at the back of the throat.
BEDEVERE:  No!  Oh! in surprise and alarm!
 Monty Python and the Holy Grail PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-21 Fir de Conversatie Marvin Renich
* Bram Moolenaar b...@moolenaar.net [150821 16:39]:
 The idea is that all events on GitHub are forwarded to the vimdev
 maillist.  Christian had setup something for that.  I believe this also
 applies to pull requests.
 
 I indeed prefer to discuss changes on the maillist, since everybody can
 join and it keeps everything in one place.  I also plan to keep
 including patches as before, not directly using the pull request.
 
 We'll see how it goes.

That sounds good to me.

Thanks...Marvin

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-21 Fir de Conversatie Bram Moolenaar

Christian Brabandt wrote:

 On Do, 20 Aug 2015, Bram Moolenaar wrote:
 
  http://www.vim.org/develop.php
 
 There is a link missing for the mercurial mirror on bitbucket

Added.

However, I think we should move the stuff about using MQ to the
Mercurial page.

 I would prefer to have a section on how to migrate from google code to 
 bitbucket / git.

That's on the page I forgot to mention:
http://www.vim.org/movetogithub.php

 And if some git expert could write a short explanation on how to develop 
 patches using git (similar to how to use the mq extension at the 
 develop.php page), this would be appreciated.

Yes.  And that would be on the git page.

-- 
User:   I'm having problems with my text editor.
Help desk:  Which editor are you using?
User:   I don't know, but it's version VI (pronounced: 6).
Help desk:  Oh, then you should upgrade to version VIM (pronounced: 994).

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-20 Fir de Conversatie Markus Heidelberg
Am Donnerstag, 20. August 2015, 10:09:39 schrieb Manuel Ortega:
 On Thu, Aug 20, 2015 at 4:55 AM, Bram Moolenaar b...@moolenaar.net wrote:
 
 
  Markus Heidelberg wrote:
 
   Am Mittwoch, 19. August 2015, 23:15:14 schrieb Markus Heidelberg:
Am Mittwoch, 19. August 2015, 21:35:52 schrieb Bram Moolenaar:

Here you removed the relevant part of Bram's post:

The result is now available at https://github.com/vim/vim-tryout.

I cloned it - it is perfect :)
 
 
 
 For some reason on github.com/vim/vim, the extra branches that were
 supposed to be removed are still there.  (vim/vim72/vim73).  At one point
 they were gone, but now they're back.

But there was some renaming and moving anyway, so referring to the
repository name was not reliable.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-20 Fir de Conversatie Markus Heidelberg
Am Donnerstag, 20. August 2015, 10:55:23 schrieb Bram Moolenaar:
 
 Markus Heidelberg wrote:
 
  Am Mittwoch, 19. August 2015, 23:15:14 schrieb Markus Heidelberg:
   Am Mittwoch, 19. August 2015, 21:35:52 schrieb Bram Moolenaar:

I have removed the Ubuntu package for hg-fast-export and downloaded the
individual files from repo.or.cz.  The conversion now runs without any
errors or warnings.

The result is now available at https://github.com/vim/vim-tryout.
Let me know if this is perfect, then I'll push to the vim/vim
repository.  And then we can continue from there.
   
   I cloned it - it is perfect :)
   I got the exactly same SHA1 hashes with my local conversion.
  
  But for some reason it takes more space. The packfile in
  .git/objects/pack/ is 42M, but only 32M with my own conversion. Can you
  confirm this in your local repo? This was not the case in your previous
  conversion.
 
 The biggest file there is 33M.  No idea how it gets bigger after pushing
 to GitHub.  10M is not something to worry about.  Previously it was
 600M.

Maybe it has something to do with GitHub's repository management. Or
that the repository was not empty when pushing to it, even though it
does not contain more tags or branches than expected.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-20 Fir de Conversatie Manuel Ortega
On Thu, Aug 20, 2015 at 4:55 AM, Bram Moolenaar b...@moolenaar.net wrote:


 Markus Heidelberg wrote:

  Am Mittwoch, 19. August 2015, 23:15:14 schrieb Markus Heidelberg:
   Am Mittwoch, 19. August 2015, 21:35:52 schrieb Bram Moolenaar:

   I cloned it - it is perfect :)



For some reason on github.com/vim/vim, the extra branches that were
supposed to be removed are still there.  (vim/vim72/vim73).  At one point
they were gone, but now they're back.

-Manny

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-20 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

  The biggest file there is 33M.  No idea how it gets bigger after pushing
  to GitHub.  10M is not something to worry about.  Previously it was
  600M.
 
 Maybe it has something to do with GitHub's repository management. Or
 that the repository was not empty when pushing to it, even though it
 does not contain more tags or branches than expected.

I have done the for real update of the Vim repository.
I used the same sequence of commands as for the tryout, thus the result
should be the same.

I'm now updating the pages that used to refer to Google Code.
Some parts are TODO.  Some parts could use some more text and examples.
Please look at these pages:

http://www.vim.org/git.php
http://www.vim.org/mercurial.php
http://www.vim.org/download.php
http://www.vim.org/develop.php

Once this looks good I'll announce the move has finished.
We can then start using the issue tracker on GitHub.

-- 
BROTHER MAYNARD: Armaments Chapter Two Verses Nine to Twenty One.
ANOTHER MONK:And St.  Attila raised his hand grenade up on high saying O
 Lord bless this thy hand grenade that with it thou mayest
 blow thine enemies to tiny bits, in thy mercy. and the Lord
 did grin and people did feast upon the lambs and sloths and
 carp and anchovies and orang-utans and breakfast cereals and
 fruit bats and...
BROTHER MAYNARD: Skip a bit brother ...
 Monty Python and the Holy Grail PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-20 Fir de Conversatie Pavol Juhas
On Wednesday, August 19, 2015 at 9:03:52 AM UTC-4, Olaf wrote:
 On 19-Aug-15, Bram Moolenaar wrote:
  
  Justin M. Keyes wrote:
...
   Why was the _mercurial_ tag format changed in the google code
   repository? This breaks all URLs using the old tag format:
   
   https://code.google.com/p/vim/source/detail?r=v7-4-827
   
   Now the URL must be formatted like this:
   
   https://code.google.com/p/vim/source/detail?r=v7.4.827

How many URLs referring to the old tags are out there and how
crucial is it to keep them working?  And is there any point
trying to do so if code.google.com is going to be shut down
anyway?

As far as I understand the tags have been changed to confirm
to a more conventional format.  The move to GitHub is a good
opportunity for such a change.

   What is the purpose of VCS tags if they're going to be changed? It is
   part of the VCS history. Only new tags should use the new  format, not
   the old tags.

VCS tags are just symbolic names that refer to a particular commit.
Unlike mercurial, git does not store them in a versioned repository
file (.hgtags in Mercurial) so the tags in git can be added, removed
or renamed anytime without affecting the repository commit hashes at all.

For a consistency and simplicity sake, I would vote for using only the
new format and not having multiple tags per commit.

Pavol

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-20 Fir de Conversatie Christian Brabandt
Hi vim_dev!

On Do, 20 Aug 2015, Christian Brabandt wrote:

 On Do, 20 Aug 2015, Bram Moolenaar wrote:
 
  http://www.vim.org/develop.php

also, I think sources.php needs to be adjusted as well.

Best,
Christian
-- 
Astrologe:
  ein Mensch, der aus den Sternen liest, was im Gesicht steht.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-20 Fir de Conversatie Christian Brabandt
On Do, 20 Aug 2015, Bram Moolenaar wrote:

 http://www.vim.org/develop.php

There is a link missing for the mercurial mirror on bitbucket

I would prefer to have a section on how to migrate from google code to 
bitbucket / git.

And if some git expert could write a short explanation on how to develop 
patches using git (similar to how to use the mq extension at the 
develop.php page), this would be appreciated.

Best,
Christian
-- 
Willst du dir den Tag versauen, mußt du in den Spiegel schauen.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-20 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

 Am Mittwoch, 19. August 2015, 23:15:14 schrieb Markus Heidelberg:
  Am Mittwoch, 19. August 2015, 21:35:52 schrieb Bram Moolenaar:
   
   I have removed the Ubuntu package for hg-fast-export and downloaded the
   individual files from repo.or.cz.  The conversion now runs without any
   errors or warnings.
   
   The result is now available at https://github.com/vim/vim-tryout.
   Let me know if this is perfect, then I'll push to the vim/vim
   repository.  And then we can continue from there.
  
  I cloned it - it is perfect :)
  I got the exactly same SHA1 hashes with my local conversion.
 
 But for some reason it takes more space. The packfile in
 .git/objects/pack/ is 42M, but only 32M with my own conversion. Can you
 confirm this in your local repo? This was not the case in your previous
 conversion.

The biggest file there is 33M.  No idea how it gets bigger after pushing
to GitHub.  10M is not something to worry about.  Previously it was
600M.

-- 
An indication you must be a manager:
You believe you never have any problems in your life, just
issues and improvement opportunities.

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-19 Fir de Conversatie Olaf Dabrunz
On 19-Aug-15, Bram Moolenaar wrote:
 
 Justin M. Keyes wrote:
 
  On 8/18/15, Bram Moolenaar b...@moolenaar.net wrote:
  
   There were a couple of hiccups, but the repository has moved to GitHub
   now.  It's in the destination place: https://github.com/vim/vim
  
   Now we need to do the git cleanup.  I'll hold off until it looks OK,
   https://github.com/vim/vim-tryout is what it would look like.
   At least it doesn't have the old branches.  Apparently the import
   resurrected what the Mercurial cleanup was supposed to remove.
  
  Why was the _mercurial_ tag format changed in the google code
  repository? This breaks all URLs using the old tag format:
  
  https://code.google.com/p/vim/source/detail?r=v7-4-827
  
  Now the URL must be formatted like this:
  
  https://code.google.com/p/vim/source/detail?r=v7.4.827
  
  What is the purpose of VCS tags if they're going to be changed? It is
  part of the VCS history. Only new tags should use the new  format, not
  the old tags.
 
 Yeah, it's not nice that old URLs stop working.  Unfortunately you are
 too late with this remark, it already happened.  We can't make both
 work, can we?

Untested.

Git allows multiple tags on a commit, and Mercurial seems to allow that
too (https://mercurial.selenic.com/wiki/Tag).

Markus, does it work if your script only adds the new tag, keeping the
old one?

Looking at hg-fast-export, it should have no problem picking up old and
new tags.


--- vim-hg-repo-cleanup-script.sh~  2015-08-19 13:59:42.0 +0200
+++ vim-hg-repo-cleanup-script.sh   2015-08-19 14:00:48.0 +0200
@@ -164,7 +164,7 @@ for i in `hg tags --debug | tac | awk '/
 REV=${i/*:/}
 OLDTAG=${i/:*/}
 NEWTAG=${OLDTAG//-/.}
-echo -e $REV $NEWTAG\n$REV 
$OLDTAG\n $OLDTAG  .hgtags
+echo $REV $NEWTAG  .hgtags
 done
 hg commit -mRename tags to match the normal version notation


-- 
Olaf Dabrunz (oda at fctrace.org)

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-19 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

 Am Dienstag, 18. August 2015, 18:42:50 schrieb Bram Moolenaar:
  
  I wrote:
  
   Applying your git cleanup script after the conversion from hg to git
   produces lots of these errors:
   
   fatal: ambiguous argument 'v7.2.434~4': unknown revision or path not in 
   the working tree.
   Use '--' to separate paths from revisions, like this:
   'git command [revision...] -- [file...]'
   
   I'll have a look myself, but perhas you can guess what is wrong?
   Or should these errors be ignored?
 
 These errors should not occur.
 The reason for them is that the mentioned tag used in the Git cleanup
 script cannot be found. In fact, the tags in the Git repo you pushed to
 GitHub use the old naming scheme with dashes, i.e. v7-2-434 instead of
 v7.2.434
 
 It seems you did the conversion from a partially cleaned up HG
 repository, where the step of tag renaming was missing.
 
 The online HG repo with applied cleanup script looks fine, it is the
 same compared to my HG repo cleanup and includes the tag renaming.
 
 The rest of the Git cleanup script was successful. Only the step to
 remove the 6 wrong commits, which required the missing tag, failed.
 
  I let the script continue, ignoring the errors.  Then I pushed the
  result to github.  I got some errors, I think my sequence of commands is
  not quite right, probably some can be left out:
  
   % git remote add origin g...@github.com:vim/vim.git
   % git remote -v
   % git push --mirror
   % git push --set-upstream origin master
   % git push --tags
   % git push origin :origin/master
 
 Should be ok. Tried locally and it looked good, I only got an error with
 the last command because the branch origin/master did not exist yet on
 the remote repository and could not be deleted.
 
  The result is now at https://github.com/vim/vim.  It does have
  everything up to patch 7.4.827.  Does it look OK?
 
 Not quite. Apart from the wrong tag naming there is also a wrong merge
 order in the two merge commits (obtain them with git log --merges),
 which already was the case with the direct Google Export.
 
 You said you use the Ubuntu package. I had a look:
   http://packages.ubuntu.com/source/vivid/hg-fast-export
 Even in the latest Ubuntu version 15.04, the package is from 2014-03-08,
 despite having received changes upstream until October 2014. The merge
 order problem has been fixed during that time (log: do not sort merge
 commit parents). The same version is used on Debian unstable Sid.
 
 A bit disappointing that obviously an old distro package is used for the
 Google Exporter.
 
 So you should use the latest version of hg-fast-export from
 http://repo.or.cz/w/fast-export.git
 and redo the conversion.
 
 It so happened that 3 days ago there were some new commits. I just
 tested, they had no influence and the result is identical (equal object
 SHA1 checksums).
 
  I'll push the cleaned-up Mercurial repository to Google code next.
  That part appears to be OK now.
 
 Yes, looks fine. It's available now.

I have removed the Ubuntu package for hg-fast-export and downloaded the
individual files from repo.or.cz.  The conversion now runs without any
errors or warnings.

The result is now available at https://github.com/vim/vim-tryout.
Let me know if this is perfect, then I'll push to the vim/vim
repository.  And then we can continue from there.

One thing that's different from the export: That one shows the author as
brammool, that is my GitHub user account.  This gives me statistics
etc.  The locally converted repo doesn't have this.  Perhaps this is a
matter of changing the email address?  Hmm, I can add my b...@vim.org
address to my GitHub account. It didn't have an effect at the toplevel, 
but if I now open a commit it works.  Perhaps it's just some caching.
I do believe my commits will also use b...@vim.org.

-- 
An indication you must be a manager:
You can explain to somebody the difference between re-engineering,
down-sizing, right-sizing, and firing people's asses.

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-19 Fir de Conversatie Markus Heidelberg
Am Mittwoch, 19. August 2015, 21:35:52 schrieb Bram Moolenaar:
 
 I have removed the Ubuntu package for hg-fast-export and downloaded the
 individual files from repo.or.cz.  The conversion now runs without any
 errors or warnings.
 
 The result is now available at https://github.com/vim/vim-tryout.
 Let me know if this is perfect, then I'll push to the vim/vim
 repository.  And then we can continue from there.

I cloned it - it is perfect :)
I got the exactly same SHA1 hashes with my local conversion.

 One thing that's different from the export: That one shows the author as
 brammool, that is my GitHub user account.  This gives me statistics
 etc.  The locally converted repo doesn't have this.  Perhaps this is a
 matter of changing the email address?  Hmm, I can add my b...@vim.org
 address to my GitHub account. It didn't have an effect at the toplevel, 
 but if I now open a commit it works.  Perhaps it's just some caching.
 I do believe my commits will also use b...@vim.org.

The only page (now after you added your vim.org address to the GitHub
settings) where brammool is not displayed I can find on the main site:
Bram Moolenaar authored a day ago instead of brammool authored 
Oh, found another one: the branches site.

All other sub-sites like commits, contributors, blob, tree, tags have
your account mapped. Maybe it's a GitHub bug on the main site.
Remember, you configured your Git mail address in ~/.gitconfig with an
uppercase B, maybe some pages are case sensitive?

I also used the uppercase b...@vim.org for committer/author mail address
unification in the Git cleanup script because that was the address you
used the last months for your commits in the experimental Git
repository.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-19 Fir de Conversatie Markus Heidelberg
Am Mittwoch, 19. August 2015, 23:15:14 schrieb Markus Heidelberg:
 Am Mittwoch, 19. August 2015, 21:35:52 schrieb Bram Moolenaar:
  
  I have removed the Ubuntu package for hg-fast-export and downloaded the
  individual files from repo.or.cz.  The conversion now runs without any
  errors or warnings.
  
  The result is now available at https://github.com/vim/vim-tryout.
  Let me know if this is perfect, then I'll push to the vim/vim
  repository.  And then we can continue from there.
 
 I cloned it - it is perfect :)
 I got the exactly same SHA1 hashes with my local conversion.

But for some reason it takes more space. The packfile in
.git/objects/pack/ is 42M, but only 32M with my own conversion. Can you
confirm this in your local repo? This was not the case in your previous
conversion.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-19 Fir de Conversatie Justin M. Keyes
On Aug 19, 2015 5:57 PM, Markus Heidelberg markus.heidelb...@web.de
wrote:

 Am Mittwoch, 19. August 2015, 15:03:38 schrieb Olaf Dabrunz:
  On 19-Aug-15, Bram Moolenaar wrote:
  
   Justin M. Keyes wrote:
  
On 8/18/15, Bram Moolenaar b...@moolenaar.net wrote:

 There were a couple of hiccups, but the repository has moved to
GitHub
 now.  It's in the destination place: https://github.com/vim/vim

 Now we need to do the git cleanup.  I'll hold off until it looks
OK,
 https://github.com/vim/vim-tryout is what it would look like.
 At least it doesn't have the old branches.  Apparently the import
 resurrected what the Mercurial cleanup was supposed to remove.
   
Why was the _mercurial_ tag format changed in the google code
repository? This breaks all URLs using the old tag format:
   
https://code.google.com/p/vim/source/detail?r=v7-4-827
   
Now the URL must be formatted like this:
   
https://code.google.com/p/vim/source/detail?r=v7.4.827
   
What is the purpose of VCS tags if they're going to be changed? It
is
part of the VCS history. Only new tags should use the new  format,
not
the old tags.

 In principle you are right, but it is different for this HG repository.

 AFAIR Bram would have removed the stale HG repository after the move to
 Git if it were possible, but it wasn't. Then the URLs immediately would
 not have been accessible anymore.

 Given that Google Code hosting will close in 5 months and thus the URLs
 will be broken anyway, I consider this change to be not very harmful at
 all.

It will be read-only, will it not? That was the purpose of the deep
linking talk, i thought. Old URLs (say, in a repository which will _not_
rewrite its history) will continue to point to the patches instead of being
broken.

 Furthermore, nobody should use the Google repository anymore from now
 on, it is outdated with the next patches.

Er, right, except for old URLs referencing those patches, originating from
sources that cannot be updated.

Justin M. Keyes

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-19 Fir de Conversatie Markus Heidelberg
Am Mittwoch, 19. August 2015, 19:00:36 schrieb Justin M. Keyes:
 On Aug 19, 2015 5:57 PM, Markus Heidelberg markus.heidelb...@web.de
 wrote:
 
  Am Mittwoch, 19. August 2015, 15:03:38 schrieb Olaf Dabrunz:
   On 19-Aug-15, Bram Moolenaar wrote:
   
Justin M. Keyes wrote:
   
 On 8/18/15, Bram Moolenaar b...@moolenaar.net wrote:
 
  There were a couple of hiccups, but the repository has moved to
 GitHub
  now.  It's in the destination place: https://github.com/vim/vim
 
  Now we need to do the git cleanup.  I'll hold off until it looks
 OK,
  https://github.com/vim/vim-tryout is what it would look like.
  At least it doesn't have the old branches.  Apparently the import
  resurrected what the Mercurial cleanup was supposed to remove.

 Why was the _mercurial_ tag format changed in the google code
 repository? This breaks all URLs using the old tag format:

 https://code.google.com/p/vim/source/detail?r=v7-4-827

 Now the URL must be formatted like this:

 https://code.google.com/p/vim/source/detail?r=v7.4.827

 What is the purpose of VCS tags if they're going to be changed? It
 is
 part of the VCS history. Only new tags should use the new  format,
 not
 the old tags.
 
  In principle you are right, but it is different for this HG repository.
 
  AFAIR Bram would have removed the stale HG repository after the move to
  Git if it were possible, but it wasn't. Then the URLs immediately would
  not have been accessible anymore.
 
  Given that Google Code hosting will close in 5 months and thus the URLs
  will be broken anyway, I consider this change to be not very harmful at
  all.
 
 It will be read-only, will it not? That was the purpose of the deep
 linking talk, i thought. Old URLs (say, in a repository which will _not_
 rewrite its history) will continue to point to the patches instead of being
 broken.

http://google-opensource.blogspot.de/2015/03/farewell-to-google-code.html

  * August 24, 2015 - The site goes read-only. You can still
checkout/view project source, issues, and wikis.

  * January 25, 2016 - The project hosting service is closed. You will
be able to download a tarball of project source, issues, and wikis.
These tarballs will be available throughout the rest of 2016.

What exactly will be deep-linked, seems to be unclear. I don't think
this feature is important, though.

  Furthermore, nobody should use the Google repository anymore from now
  on, it is outdated with the next patches.
 
 Er, right, except for old URLs referencing those patches, originating from
 sources that cannot be updated.

Which will stop working in 5 months. It's just that they stop working
earlier now. Broken URLs are not a new phenomenon in the internet.

But I don't really care. If the old tags should exist in the Google
repository, I won't have a problem with it, unless they appear in the
new Git repo.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-19 Fir de Conversatie Markus Heidelberg
Am Mittwoch, 19. August 2015, 15:03:38 schrieb Olaf Dabrunz:
 On 19-Aug-15, Bram Moolenaar wrote:
  
  Justin M. Keyes wrote:
  
   On 8/18/15, Bram Moolenaar b...@moolenaar.net wrote:
   
There were a couple of hiccups, but the repository has moved to GitHub
now.  It's in the destination place: https://github.com/vim/vim
   
Now we need to do the git cleanup.  I'll hold off until it looks OK,
https://github.com/vim/vim-tryout is what it would look like.
At least it doesn't have the old branches.  Apparently the import
resurrected what the Mercurial cleanup was supposed to remove.
   
   Why was the _mercurial_ tag format changed in the google code
   repository? This breaks all URLs using the old tag format:
   
   https://code.google.com/p/vim/source/detail?r=v7-4-827
   
   Now the URL must be formatted like this:
   
   https://code.google.com/p/vim/source/detail?r=v7.4.827
   
   What is the purpose of VCS tags if they're going to be changed? It is
   part of the VCS history. Only new tags should use the new  format, not
   the old tags.

In principle you are right, but it is different for this HG repository.

AFAIR Bram would have removed the stale HG repository after the move to
Git if it were possible, but it wasn't. Then the URLs immediately would
not have been accessible anymore.

Given that Google Code hosting will close in 5 months and thus the URLs
will be broken anyway, I consider this change to be not very harmful at
all.
Furthermore, nobody should use the Google repository anymore from now
on, it is outdated with the next patches.

The intention was to have proper tag names (matching the version number)
in the cleaned up Git repository. Since these should be identical in the
new HG mirror, which also shouldn't contain a mess of two different tag
naming schemes, the renaming has already been applied to the HG repo
before conversion to Git.

  Yeah, it's not nice that old URLs stop working.  Unfortunately you are
  too late with this remark, it already happened.  We can't make both
  work, can we?
 
 Git allows multiple tags on a commit, and Mercurial seems to allow that
 too (https://mercurial.selenic.com/wiki/Tag).

Yes, it is possible with both systems.

 Markus, does it work if your script only adds the new tag, keeping the
 old one?

The script has already been executed and the results pushed.

Of course it would be possible to bring the old tags back with an
additional commit, but as written above in my opinion this won't make
much sense. Christian would have to revert the mess again in his mirror.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-19 Fir de Conversatie Markus Heidelberg
Am Mittwoch, 19. August 2015, 11:59:12 schrieb Bram Moolenaar:
 
 Markus Heidelberg wrote:
 
  Am Dienstag, 18. August 2015, 18:42:50 schrieb Bram Moolenaar:
   
   I let the script continue, ignoring the errors.  Then I pushed the
   result to github.  I got some errors, I think my sequence of commands is
   not quite right, probably some can be left out:
   
% git remote add origin g...@github.com:vim/vim.git
% git remote -v
% git push --mirror
% git push --set-upstream origin master
% git push --tags
% git push origin :origin/master
  
  Should be ok. Tried locally and it looked good, I only got an error with
  the last command because the branch origin/master did not exist yet on
  the remote repository and could not be deleted.
 
 So I just leave out the last command?

Yes, it is not necessary in this command sequence because there did not
yet exist a remote master branch you could have pushed in addition to
the normal master branch. But it doesn't harm either.

   The result is now at https://github.com/vim/vim.  It does have
   everything up to patch 7.4.827.  Does it look OK?
  
  Not quite. Apart from the wrong tag naming there is also a wrong merge
  order in the two merge commits (obtain them with git log --merges),
  which already was the case with the direct Google Export.
 
 Yes, this is the result of the Google export.  Or GitHub import from
 Google Code, as the conversion is actually done by GitHub.

No, this was indeed the result of your local conversion using the old
hg-fast-export package and the cleanup. Before you renamed it from
vim/vim to vim/vim-tryout. However...

  You said you use the Ubuntu package. I had a look:
http://packages.ubuntu.com/source/vivid/hg-fast-export
  Even in the latest Ubuntu version 15.04, the package is from 2014-03-08,
  despite having received changes upstream until October 2014. The merge
  order problem has been fixed during that time (log: do not sort merge
  commit parents). The same version is used on Debian unstable Sid.
  
  A bit disappointing that obviously an old distro package is used for the
  Google Exporter.

As you wrote above, the conversion is done by GitHub. I read it today on
the Google Code shutdown announcement:

  Please note: GitHub’s importer will convert any Subversion or
  Mercurial Google Code projects to use Git in the process.

http://google-opensource.blogspot.de/2015/03/farewell-to-google-code.html

So it's GitHub who uses an old fast-export version and omits the
packfile optimization. They should know better.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-19 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

 Am Dienstag, 18. August 2015, 18:42:50 schrieb Bram Moolenaar:
  
  I wrote:
  
   Applying your git cleanup script after the conversion from hg to git
   produces lots of these errors:
   
   fatal: ambiguous argument 'v7.2.434~4': unknown revision or path not in 
   the working tree.
   Use '--' to separate paths from revisions, like this:
   'git command [revision...] -- [file...]'
   
   I'll have a look myself, but perhas you can guess what is wrong?
   Or should these errors be ignored?
 
 These errors should not occur.
 The reason for them is that the mentioned tag used in the Git cleanup
 script cannot be found. In fact, the tags in the Git repo you pushed to
 GitHub use the old naming scheme with dashes, i.e. v7-2-434 instead of
 v7.2.434
 
 It seems you did the conversion from a partially cleaned up HG
 repository, where the step of tag renaming was missing.

Hmm, it's possible in all the tryouts I forgot to run the Mercurial
cleanup.  Or used the wrong Mercurial repo to convert from.  I should
delete old stuff.

 The online HG repo with applied cleanup script looks fine, it is the
 same compared to my HG repo cleanup and includes the tag renaming.

OK, glad that worked.

 The rest of the Git cleanup script was successful. Only the step to
 remove the 6 wrong commits, which required the missing tag, failed.

I'll redo this part tonight, using the cleaned up Mercurial repo, and
push to the vim-tryout repo on github.  That should give the same result
as doing it for real, but not risking damaging the vim repo.  Although
it seems with --mirror we can always overwrite it with a corrected one.

  I let the script continue, ignoring the errors.  Then I pushed the
  result to github.  I got some errors, I think my sequence of commands is
  not quite right, probably some can be left out:
  
   % git remote add origin g...@github.com:vim/vim.git
   % git remote -v
   % git push --mirror
   % git push --set-upstream origin master
   % git push --tags
   % git push origin :origin/master
 
 Should be ok. Tried locally and it looked good, I only got an error with
 the last command because the branch origin/master did not exist yet on
 the remote repository and could not be deleted.

So I just leave out the last command?

  The result is now at https://github.com/vim/vim.  It does have
  everything up to patch 7.4.827.  Does it look OK?
 
 Not quite. Apart from the wrong tag naming there is also a wrong merge
 order in the two merge commits (obtain them with git log --merges),
 which already was the case with the direct Google Export.

Yes, this is the result of the Google export.  Or GitHub import from
Google Code, as the conversion is actually done by GitHub.

 You said you use the Ubuntu package. I had a look:
   http://packages.ubuntu.com/source/vivid/hg-fast-export
 Even in the latest Ubuntu version 15.04, the package is from 2014-03-08,
 despite having received changes upstream until October 2014. The merge
 order problem has been fixed during that time (log: do not sort merge
 commit parents). The same version is used on Debian unstable Sid.
 
 A bit disappointing that obviously an old distro package is used for the
 Google Exporter.
 
 So you should use the latest version of hg-fast-export from
 http://repo.or.cz/w/fast-export.git
 and redo the conversion.

OK, sounds like we identified what's wrong in the sequence of commands.

 It so happened that 3 days ago there were some new commits. I just
 tested, they had no influence and the result is identical (equal object
 SHA1 checksums).
 
  I'll push the cleaned-up Mercurial repository to Google code next.
  That part appears to be OK now.
 
 Yes, looks fine. It's available now.

OK.  More tonight.

-- 
ARTHUR: Charge!
   [They all charge with swords drawn towards the RABBIT.  A tremendous twenty
   second fight with Peckinpahish shots and borrowing heavily also on the
   Kung Fu and karate-type films ensues, in which some four KNIGHTS are
   comprehensively killed.]
ARTHUR: Run away!  Run away!
 Monty Python and the Holy Grail PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-19 Fir de Conversatie Bram Moolenaar

Justin M. Keyes wrote:

 On 8/18/15, Bram Moolenaar b...@moolenaar.net wrote:
 
  There were a couple of hiccups, but the repository has moved to GitHub
  now.  It's in the destination place: https://github.com/vim/vim
 
  Now we need to do the git cleanup.  I'll hold off until it looks OK,
  https://github.com/vim/vim-tryout is what it would look like.
  At least it doesn't have the old branches.  Apparently the import
  resurrected what the Mercurial cleanup was supposed to remove.
 
 Why was the _mercurial_ tag format changed in the google code
 repository? This breaks all URLs using the old tag format:
 
 https://code.google.com/p/vim/source/detail?r=v7-4-827
 
 Now the URL must be formatted like this:
 
 https://code.google.com/p/vim/source/detail?r=v7.4.827
 
 What is the purpose of VCS tags if they're going to be changed? It is
 part of the VCS history. Only new tags should use the new  format, not
 the old tags.

Yeah, it's not nice that old URLs stop working.  Unfortunately you are
too late with this remark, it already happened.  We can't make both
work, can we?

-- 
A hamburger walks into a bar, and the bartender says: I'm sorry,
but we don't serve food here.

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-19 Fir de Conversatie Justin M. Keyes
On Wed, Aug 19, 2015 at 7:25 PM, Markus Heidelberg
markus.heidelb...@web.de wrote:
 Am Mittwoch, 19. August 2015, 19:00:36 schrieb Justin M. Keyes:
 On Aug 19, 2015 5:57 PM, Markus Heidelberg markus.heidelb...@web.de
 wrote:
 
  Am Mittwoch, 19. August 2015, 15:03:38 schrieb Olaf Dabrunz:
   On 19-Aug-15, Bram Moolenaar wrote:
   
Justin M. Keyes wrote:
   
 On 8/18/15, Bram Moolenaar b...@moolenaar.net wrote:
 
  There were a couple of hiccups, but the repository has moved to
 GitHub
  now.  It's in the destination place: https://github.com/vim/vim
 
  Now we need to do the git cleanup.  I'll hold off until it looks
 OK,
  https://github.com/vim/vim-tryout is what it would look like.
  At least it doesn't have the old branches.  Apparently the import
  resurrected what the Mercurial cleanup was supposed to remove.

 Why was the _mercurial_ tag format changed in the google code
 repository? This breaks all URLs using the old tag format:

 https://code.google.com/p/vim/source/detail?r=v7-4-827

 Now the URL must be formatted like this:

 https://code.google.com/p/vim/source/detail?r=v7.4.827

 What is the purpose of VCS tags if they're going to be changed? It
 is
 part of the VCS history. Only new tags should use the new  format,
 not
 the old tags.
 
  In principle you are right, but it is different for this HG repository.
 
  AFAIR Bram would have removed the stale HG repository after the move to
  Git if it were possible, but it wasn't. Then the URLs immediately would
  not have been accessible anymore.
 
  Given that Google Code hosting will close in 5 months and thus the URLs
  will be broken anyway, I consider this change to be not very harmful at
  all.

 It will be read-only, will it not? That was the purpose of the deep
 linking talk, i thought. Old URLs (say, in a repository which will _not_
 rewrite its history) will continue to point to the patches instead of being
 broken.

 http://google-opensource.blogspot.de/2015/03/farewell-to-google-code.html

   * August 24, 2015 - The site goes read-only. You can still
 checkout/view project source, issues, and wikis.

   * January 25, 2016 - The project hosting service is closed. You will
 be able to download a tarball of project source, issues, and wikis.
 These tarballs will be available throughout the rest of 2016.

 What exactly will be deep-linked, seems to be unclear. I don't think
 this feature is important, though.

  Furthermore, nobody should use the Google repository anymore from now
  on, it is outdated with the next patches.

 Er, right, except for old URLs referencing those patches, originating from
 sources that cannot be updated.

 Which will stop working in 5 months. It's just that they stop working

Ok, I didn't realize that they would actually stop the read-only
service. In that case, yes, it is pointless to preserve the tag format
for my use case.

 earlier now. Broken URLs are not a new phenomenon in the internet.

Sure, but I thought that Google gave half a shit, that's all. Offering
a VCS service--which implies a commitment to content
addressability--also implies that you might want to support the
Uniform Resource Locator concept, even if you sunset the service, if
the cost of doing so is minimal.

 But I don't really care. If the old tags should exist in the Google
 repository, I won't have a problem with it, unless they appear in the
 new Git repo.

No, consider my request canceled. I like the new format for the Git transition.


Justin M. Keyes

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie Markus Heidelberg
Am Sonntag, 16. August 2015, 15:23:15 schrieb Bram Moolenaar:
 
 OK, if there is a chance you still find some improvements for the
 Mercurial cleanup, we better wait a bit before doing that.
 
 Once you have it all figured out, I hope you can send me the final
 scripts.  I wouldn't want some small mistake spoil the fun.

Here are the final two scripts for HG and Git cleanup.
The intermediate step (HG to Git conversion) you already figured out.

The HG cleanup now contains the tag renaming as discussed. Do not forget
to adapt your scripts for the new tag naming scheme using dots instead
of dashes.

I suggest to invoke each step in a copy (cp -a) of the particular base
repository so you can easily repeat it without having to go through the
whole chain. And for comparing the state before and after each step.




#!/bin/bash

# Vim HG repository cleanup
#
# Overview:
# - close stale branches
# - fix wrong tags
# - remove unused tags
# - add missing tags
# - rename tags: replace - by .

set -e

hg config extensions.rebase || { echo -e Rebase extension has to be enabled in 
~/.hgrc:\n[extensions]\nrebase =  exit 1; }

# close stale branches, switch back to default branch afterwards
# This has the slightly bad visual side-effect of parallel development from the
# previous branch head up to the corresponding closing commit in hg log
# --graph, but is the correct thing to do to avoid seemingly active branches
# showing up in hg branches output.
hg update -C vim
hg commit --close-branch -mClose invalid branch 'vim'
hg update -C vim72
hg commit --close-branch -mClose unused branch 'vim72'
hg update -C vim73
hg commit --close-branch -mClose old branch 'vim73'
hg update -C default

# remove unused branch lines
# However, since the network protocol works append-only, you cannot push it
# to the public repo. This would have to be done directly on the server via SSH
# or an admin interface.
# And still this change would have no effect when pulling from existing
# clones, it would have to be stripped there as well, so ignore this step.
#hg strip vim
#hg strip vim72

# find potentially wrong tags by checking whether the patch number had been
# added to src/version.c in that changeset
#for i in $(hg tags | grep -o v7-.*-[^ ]*); do hg diff -c $i src/version.c | 
grep -q ^+$(echo $i | sed -e 's/v7-.*-0*//'), || echo $i; done
# result:
# v7-4-415
# v7-4b-000
# v7-3-523
# v7-3-143
# v7-2-446
# v7-2-443
# v7-2-442
# v7-2-441
# v7-2-440
# v7-2-439
# v7-2-438
# v7-2-437
# v7-2-436
# v7-2-232
# v7-2-176
# v7-2-167fix
# v7-2-168
# v7-2-082
# v7-2-080
# v7-2-000
# v7-2c-000
# v7-2b-000
# v7-2a-00
# v7-1-258
# v7-1-008
# v7-0-225

# determine the actually wrong tags after manual inspection
# v7-4-415
# v7-3-143
# v7-2-446
# v7-2-443
# v7-2-442
# v7-2-441
# v7-2-440
# v7-2-439
# v7-2-438
# v7-2-437
# v7-2-436
# v7-2-232
# v7-2-176
# v7-2-167fix
# v7-2-168
# v7-2-082
# v7-2-080
# v7-1-008
# v7-0-225

# fix the wrong tags
# Do not edit the .hgtags file manually, but rely on hg tag to do the right
# thing, see
#   http://mercurial.selenic.com/wiki/Tag
#   http://mercurial.selenic.com/wiki/TagDesign
hg tag -f --local rebasedest
hg tag -f -r 2ec8266fa254f9f90fd302df275d2813ae08a8e6 v7-0-225
hg tag -f -r 042fa969dab175d414d611425d8a61424bacf75f v7-1-008
hg tag -f -r 12cecc379574aba2231cbba54c4eaeef3432db69 v7-2-080
hg tag -f -r be7491f23e9d8818821de61d9ce53cb1cb1c7dc9 v7-2-082
hg tag -f -r ad41c6afaa7b0b512cd97dd07a93cc0504508227 v7-2-168
hg tag -f -r e8eeeff19eae568f4642cb9f368a1aec6c749a61 v7-2-176
hg tag -f -r 5bd06a91c65c06847fb0d618c71736d7c73e95d2 v7-2-232
hg tag -f -r e12b9d992389cc770eb72e16932313cd0905190f v7-2-436
hg tag -f -r ecb9c2b70b0f6e9918e75bf4e1ac887748a2313a v7-2-437
hg tag -f -r d44112feb8153ffaa6ab8ec6442c5c4af0951728 v7-2-438
hg tag -f -r ea7c2d89b76bf42eb0da3459e8813104d76bca02 v7-2-439
hg tag -f -r cd6e6876308e4e0fb621431646ebeec4b49a2504 v7-2-440
hg tag -f -r f838615313cd5832efa624526a7575668fb40da9 v7-2-441
hg tag -f -r b0ebf9d121ff99eb2e1697a35dca528e7ecb8f4c v7-2-442
hg tag -f -r 0c1e413c32f1f3f8e28ebf8a030cedeeb664cd46 v7-2-443
hg tag -f -r b619655b31db9469f6fe41932daff7a566079097 v7-2-446
hg tag -f -r afb476746692322523f167c218803317b87623e3 v7-3-143
hg tag -f -r 353442863d8558dc89d35ef349b60ebb2e38de0e v7-4-415
hg tag -r v7-2-167fix v7-2-167
hg tag --remove v7-2-167fix

# Optionally squash all separate tag changing commits into one
# with a proper description

cat EOF  logfile.txt
Fix wrong tags

v7-2-167fix has been renamed to v7-2-167 because the state in repository
matched version 7.2.167.

The others have been moved to the correct changeset.
EOF

hg rebase --dest rebasedest --source tip~19 --collapse --logfile logfile.txt
rm logfile.txt

# remove unused tag
hg tag -mRemove unused tag from invalid line of history --remove start

# add missing tags
hg tag -f --local rebasedest
hg tag -r f03c3fae0a99 v7-0-076
hg tag -r v7-2-000 v7-2
hg 

Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

 Am Sonntag, 16. August 2015, 15:23:15 schrieb Bram Moolenaar:
  
  OK, if there is a chance you still find some improvements for the
  Mercurial cleanup, we better wait a bit before doing that.
  
  Once you have it all figured out, I hope you can send me the final
  scripts.  I wouldn't want some small mistake spoil the fun.
 
 Here are the final two scripts for HG and Git cleanup.
 The intermediate step (HG to Git conversion) you already figured out.
 
 The HG cleanup now contains the tag renaming as discussed. Do not forget
 to adapt your scripts for the new tag naming scheme using dots instead
 of dashes.
 
 I suggest to invoke each step in a copy (cp -a) of the particular base
 repository so you can easily repeat it without having to go through the
 whole chain. And for comparing the state before and after each step.

Wonderful!  And just in time, I'm working on Vim today.

So, these are the steps to be taken:
1. Stop making changes: freeze; announce on Google code project page.
   Announce on the vim maillists.
2. Run ~/tmp/clean_repo.sh on the Mercurial repo.
3. Push to Google code.  Google code will remain in this state for a week.
4. Delete the testing repositories on github.
   Put a note on the github site that it's under construction.
5. On Google code, use the export functionality to move to github.
   This will create the Vim repository there.

This will take some time.  While that's happening do this locally:

6. Change my scripts to use the new tag format: v7.4.999
7. Commit a change in the Mercurial repo to break the build, pointing the user
   to github.  Do NOT push this yet.
8. Convert the Mercurial repo to github.
9. Commit a change that undoes the build breakage.
10. Run the git cleanup script: ~/tmp/clean_git.sh

Wait for the move tool to finish, check that it looks OK, all issues have been
moved.

11. Use git push --mirror to overwrite the repository at github with the
cleaned up one.
12. unfreeze, continue committing patches, editing issues, etc. on github
13. Tell everybody to start using github, add a message on Google code
that the site is deprecated, any changes will be discarded.
My patches will go to github only.
14. Push the change to the Mercurial repository that breaks the build.
This must be done before August 25.
15. After checking that it works, set the Google code site to the
project moved state.  Mercurial keeps working still, but gets the
older version, with the broken build.

Done!



Note: steps 9 and 10 may be swapped.  I think it's best to undo the
build breakage first, so that it's immediately after the commit that
breaks it.  But I'm not 100% sure this doesn't cause a problem for the
git cleanup.



If someone spots a problem, please report it soon, because I plan to
start doing this today.

-- 
ARTHUR:   Ni!
BEDEVERE: Nu!
ARTHUR:   No.  Ni!  More like this. Ni!
BEDEVERE: Ni, ni, ni!
 Monty Python and the Holy Grail PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie Markus Heidelberg
I hope I don't brake the mail chain, I'm not at home at my mail client.

 Wonderful!  And just in time, I'm working on Vim today.

Then staying up late was worth it :)

 So, these are the steps to be taken:
 1. Stop making changes: freeze; announce on Google code project page.
Announce on the vim maillists.
 2. Run ~/tmp/clean_repo.sh on the Mercurial repo.
 3. Push to Google code.  Google code will remain in this state for a week.
 4. Delete the testing repositories on github.
Put a note on the github site that it's under construction.
 5. On Google code, use the export functionality to move to github.
This will create the Vim repository there.
 
 This will take some time.  While that's happening do this locally:
 
 6. Change my scripts to use the new tag format: v7.4.999
 7. Commit a change in the Mercurial repo to break the build, pointing the user
to github.  Do NOT push this yet.
 8. Convert the Mercurial repo to github.
 9. Commit a change that undoes the build breakage.
 10. Run the git cleanup script: ~/tmp/clean_git.sh

In my opinion it would be a shame to start with such two workaround
commits in a repository just cleaned up. They will live there forever,
the workaround will only be used for the then old HG repository on
Google until the switch-off in January 2016.

As far as I understood the procedure Christian uses for the HG mirror,
it doesn't matter at all whether these two commits exist in the Git
repository or not. It should be possible to apply the unbreak patch only
to the HG mirror.

So I suggest to swap 7. and 8. and leave 9. for Christian.

 Wait for the move tool to finish, check that it looks OK, all issues have been
 moved.
 
 11. Use git push --mirror to overwrite the repository at github with the
 cleaned up one.
 12. unfreeze, continue committing patches, editing issues, etc. on github
 13. Tell everybody to start using github, add a message on Google code
 that the site is deprecated, any changes will be discarded.
 My patches will go to github only.
 14. Push the change to the Mercurial repository that breaks the build.
 This must be done before August 25.
 15. After checking that it works, set the Google code site to the
 project moved state.  Mercurial keeps working still, but gets the
 older version, with the broken build.

In case you didn't already have the idea:
In the broken build you might want to point to the HG mirror or to the
Vim site with documentation for switching.

 Done!

Looks good.

 Note: steps 9 and 10 may be swapped.  I think it's best to undo the
 build breakage first, so that it's immediately after the commit that
 breaks it.  But I'm not 100% sure this doesn't cause a problem for the
 git cleanup.

I guess it should not make a difference, but as I wrote, I'm not in
favor of this approach.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie Bram Moolenaar

Note: I have started doing things for real.
The cleaned up Mercurial repository has been pushed to Google code.

I'll now start the export to github.  We can redo this when needed.
In preparation I've renamed the previously exported repo, which was
overwritten with the cleaned up one, to vim-tryout.

I'll now announce the Google code site is frozen.
Specifically, don't add or edit Issues there.

-- 
TIM:Too late.
ARTHUR: What?
TIM:There he is!
   [They all turn, and see a large white RABBIT lollop a few yards out of the
   cave.  Accompanied by terrifying chord and jarring metallic monster noise.]
 Monty Python and the Holy Grail PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie Christian Brabandt
On Di, 18 Aug 2015, Bram Moolenaar wrote:

 Note: I have started doing things for real.
 The cleaned up Mercurial repository has been pushed to Google code.

I have resynced the bitbucket mirror. I will update the sync script
tomorrow, when the new github repository should be available. And once 
it is there, I will switch on to sync the repository every 15 Minutes. 

Here is a documentation update:

Stay with mercurial
===

A repository at bitbucket.org has been setup that mirrors the official Vim 
source repository at https://github.com/vim/vim

To switch to the new mercurial repository, simply edit the file .hg/hgrc in the 
mercurial vim repository and change the following line

   [paths]
   default = https://code.google.com/p/vim/

to the new repository:

   [paths]
   default = https://bitbucket.org/vim-mirror/vim

That's it. Run `hg pull -u` to fetch from the new mercurial repository and 
update your working copy.

For developing patches, you can proceed as mentioned at 
http://www.vim.org/develop.php


Best,
Christian
-- 
Die Menschen sind durch die unendlichen Bedingungen des 
Erscheinens dergestalt obruiert, dass sie das eine Urbedingende nicht 
gewahren können.
-- Goethe, Maximen und Reflektionen, Nr. 850

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie Bram Moolenaar

Christian Brabandt wrote:

 On Di, 18 Aug 2015, Bram Moolenaar wrote:
 
  Note: I have started doing things for real.
  The cleaned up Mercurial repository has been pushed to Google code.
 
 I have resynced the bitbucket mirror. I will update the sync script
 tomorrow, when the new github repository should be available. And once 
 it is there, I will switch on to sync the repository every 15 Minutes. 

OK, let me know if you spot something wrong.  The project move to github
ran into an error.  But the GitHub staff is very responsive, let's see
if they can fix it.

 Here is a documentation update:

Thanks!  I'll integrate this later.


-- 
If cars evolved at the same rate as computers have, they'd cost five euro, 
run for a year on a couple of liters of petrol, and explode once a day.

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie Justin M. Keyes
On 8/18/15, Bram Moolenaar b...@moolenaar.net wrote:

 There were a couple of hiccups, but the repository has moved to GitHub
 now.  It's in the destination place: https://github.com/vim/vim

 Now we need to do the git cleanup.  I'll hold off until it looks OK,
 https://github.com/vim/vim-tryout is what it would look like.
 At least it doesn't have the old branches.  Apparently the import
 resurrected what the Mercurial cleanup was supposed to remove.

Why was the _mercurial_ tag format changed in the google code
repository? This breaks all URLs using the old tag format:

https://code.google.com/p/vim/source/detail?r=v7-4-827

Now the URL must be formatted like this:

https://code.google.com/p/vim/source/detail?r=v7.4.827

What is the purpose of VCS tags if they're going to be changed? It is
part of the VCS history. Only new tags should use the new  format, not
the old tags.

-- 
Justin M. Keyes

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie Olaf Dabrunz
On 18-Aug-15, Christian Brabandt wrote:
 Here is a documentation update:
 
 Stay with mercurial
 ===
 
 A repository at bitbucket.org has been setup that mirrors the official Vim 
 source repository at https://github.com/vim/vim

Minor nit-pick:

has been setup - has been set up

http://grammarist.com/spelling/set-up-vs-setup

-- 
Olaf Dabrunz (oda at fctrace.org)

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie Bram Moolenaar

There were a couple of hiccups, but the repository has moved to GitHub
now.  It's in the destination place: https://github.com/vim/vim

Now we need to do the git cleanup.  I'll hold off until it looks OK,
https://github.com/vim/vim-tryout is what it would look like.
At least it doesn't have the old branches.  Apparently the import
resurrected what the Mercurial cleanup was supposed to remove.


-- 
TIM:   That is not an ordinary rabbit ... 'tis the most foul cruel and
   bad-tempered thing you ever set eyes on.
ROBIN: You tit.  I soiled my armour I was so scared!
 Monty Python and the Holy Grail PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie Markus Heidelberg
Am Dienstag, 18. August 2015, 18:42:50 schrieb Bram Moolenaar:
 
 I wrote:
 
  Applying your git cleanup script after the conversion from hg to git
  produces lots of these errors:
  
  fatal: ambiguous argument 'v7.2.434~4': unknown revision or path not in the 
  working tree.
  Use '--' to separate paths from revisions, like this:
  'git command [revision...] -- [file...]'
  
  I'll have a look myself, but perhas you can guess what is wrong?
  Or should these errors be ignored?

These errors should not occur.
The reason for them is that the mentioned tag used in the Git cleanup
script cannot be found. In fact, the tags in the Git repo you pushed to
GitHub use the old naming scheme with dashes, i.e. v7-2-434 instead of
v7.2.434

It seems you did the conversion from a partially cleaned up HG
repository, where the step of tag renaming was missing.

The online HG repo with applied cleanup script looks fine, it is the
same compared to my HG repo cleanup and includes the tag renaming.

The rest of the Git cleanup script was successful. Only the step to
remove the 6 wrong commits, which required the missing tag, failed.

 I let the script continue, ignoring the errors.  Then I pushed the
 result to github.  I got some errors, I think my sequence of commands is
 not quite right, probably some can be left out:
 
  % git remote add origin g...@github.com:vim/vim.git
  % git remote -v
  % git push --mirror
  % git push --set-upstream origin master
  % git push --tags
  % git push origin :origin/master

Should be ok. Tried locally and it looked good, I only got an error with
the last command because the branch origin/master did not exist yet on
the remote repository and could not be deleted.

 The result is now at https://github.com/vim/vim.  It does have
 everything up to patch 7.4.827.  Does it look OK?

Not quite. Apart from the wrong tag naming there is also a wrong merge
order in the two merge commits (obtain them with git log --merges),
which already was the case with the direct Google Export.

You said you use the Ubuntu package. I had a look:
  http://packages.ubuntu.com/source/vivid/hg-fast-export
Even in the latest Ubuntu version 15.04, the package is from 2014-03-08,
despite having received changes upstream until October 2014. The merge
order problem has been fixed during that time (log: do not sort merge
commit parents). The same version is used on Debian unstable Sid.

A bit disappointing that obviously an old distro package is used for the
Google Exporter.

So you should use the latest version of hg-fast-export from
http://repo.or.cz/w/fast-export.git
and redo the conversion.

It so happened that 3 days ago there were some new commits. I just
tested, they had no influence and the result is identical (equal object
SHA1 checksums).

 I'll push the cleaned-up Mercurial repository to Google code next.
 That part appears to be OK now.

Yes, looks fine. It's available now.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie Bram Moolenaar

I wrote:

 Applying your git cleanup script after the conversion from hg to git
 produces lots of these errors:
 
 fatal: ambiguous argument 'v7.2.434~4': unknown revision or path not in the 
 working tree.
 Use '--' to separate paths from revisions, like this:
 'git command [revision...] -- [file...]'
 
 I'll have a look myself, but perhas you can guess what is wrong?
 Or should these errors be ignored?

I let the script continue, ignoring the errors.  Then I pushed the
result to github.  I got some errors, I think my sequence of commands is
not quite right, probably some can be left out:

 % git remote add origin g...@github.com:vim/vim.git
 % git remote -v
 % git push --mirror
 % git push --set-upstream origin master
 % git push --tags
 % git push origin :origin/master

The result is now at https://github.com/vim/vim.  It does have
everything up to patch 7.4.827.  Does it look OK?

I'll push the cleaned-up Mercurial repository to Google code next.
That part appears to be OK now.

-- 
Vi beats Emacs to death, and then again!
http://linuxtoday.com/stories/5764.html

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie LCD 47
On 18 August 2015, Bram Moolenaar b...@moolenaar.net wrote:
 
 Lcd wrote:
 
  On 18 August 2015, Bram Moolenaar b...@moolenaar.net wrote:
  [...]
   For users who switch from Mercurial on Google Code to the Mercurial
   mirror, there would be an extra commit that doesn't exist anywhere
   else.  I hope that will work.
  [...]
  
  Why not make the Bitbucket mirror at the same time as the Github
  migration?  The commit with the annoying message only needs to exist
  on Google Code.  There's no point in copying that particular commit to
  Bitbucket and undoing it immediately afterwards, right?
 
 Yes, if we get the timing right.  If someone is too late, he will
 already have gotten the extra commit from Google code.  When switching
 to the other Mercurial repository, which doesn't have this commit, what
 happens?

Hmm, right, it would no longer be possible to just switch the
address in hgrc.  Well, I suppose keeping the extra commit is harmless
anyway.

/lcd

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie LCD 47
On 18 August 2015, Bram Moolenaar b...@moolenaar.net wrote:
[...]
 For users who switch from Mercurial on Google Code to the Mercurial
 mirror, there would be an extra commit that doesn't exist anywhere
 else.  I hope that will work.
[...]

Why not make the Bitbucket mirror at the same time as the Github
migration?  The commit with the annoying message only needs to exist
on Google Code.  There's no point in copying that particular commit to
Bitbucket and undoing it immediately afterwards, right?

/lcd

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie Bram Moolenaar

Markus -

Applying your git cleanup script after the conversion from hg to git
produces lots of these errors:

fatal: ambiguous argument 'v7.2.434~4': unknown revision or path not in the 
working tree.
Use '--' to separate paths from revisions, like this:
'git command [revision...] -- [file...]'

I'll have a look myself, but perhas you can guess what is wrong?
Or should these errors be ignored?


-- 
TALL KNIGHT:   Firstly.  You must get us another shrubbery!
OTHER KNIGHTS: More shrubberies!  More shrubberies for the ex-Knights of Ni!
ARTHUR:Not another shrubbery -
 Monty Python and the Holy Grail PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie Bram Moolenaar

Lcd wrote:

 On 18 August 2015, Bram Moolenaar b...@moolenaar.net wrote:
 [...]
  For users who switch from Mercurial on Google Code to the Mercurial
  mirror, there would be an extra commit that doesn't exist anywhere
  else.  I hope that will work.
 [...]
 
 Why not make the Bitbucket mirror at the same time as the Github
 migration?  The commit with the annoying message only needs to exist
 on Google Code.  There's no point in copying that particular commit to
 Bitbucket and undoing it immediately afterwards, right?

Yes, if we get the timing right.  If someone is too late, he will
already have gotten the extra commit from Google code.  When switching
to the other Mercurial repository, which doesn't have this commit, what
happens?

-- 
The war between Emacs and Vi is over.  Vi has won with 3 to 1.
http://m.linuxjournal.com/files/linuxjournal.com/linuxjournal/articles/030/3044/3044s1.html

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Aw: Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-18 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

  Wonderful!  And just in time, I'm working on Vim today.
 
 Then staying up late was worth it :)

And thanks for checking the plan.

  So, these are the steps to be taken:
  1. Stop making changes: freeze; announce on Google code project page.
 Announce on the vim maillists.
  2. Run ~/tmp/clean_repo.sh on the Mercurial repo.
  3. Push to Google code.  Google code will remain in this state for a week.
  4. Delete the testing repositories on github.
 Put a note on the github site that it's under construction.
  5. On Google code, use the export functionality to move to github.
 This will create the Vim repository there.
  
  This will take some time.  While that's happening do this locally:
  
  6. Change my scripts to use the new tag format: v7.4.999
  7. Commit a change in the Mercurial repo to break the build, pointing the 
  user
 to github.  Do NOT push this yet.
  8. Convert the Mercurial repo to github.
  9. Commit a change that undoes the build breakage.
  10. Run the git cleanup script: ~/tmp/clean_git.sh
 
 In my opinion it would be a shame to start with such two workaround
 commits in a repository just cleaned up. They will live there forever,
 the workaround will only be used for the then old HG repository on
 Google until the switch-off in January 2016.
 
 As far as I understood the procedure Christian uses for the HG mirror,
 it doesn't matter at all whether these two commits exist in the Git
 repository or not. It should be possible to apply the unbreak patch only
 to the HG mirror.
 
 So I suggest to swap 7. and 8. and leave 9. for Christian.

That's OK with me.  So we have the git repository start just before the
commit that changes the build.  I've decided to not actually break it,
it appears that an annoying message should be sufficient.

For users who switch from Mercurial on Google Code to the Mercurial
mirror, there would be an extra commit that doesn't exist anywhere
else.  I hope that will work.

  Wait for the move tool to finish, check that it looks OK, all issues have 
  been
  moved.
  
  11. Use git push --mirror to overwrite the repository at github with the
  cleaned up one.
  12. unfreeze, continue committing patches, editing issues, etc. on github
  13. Tell everybody to start using github, add a message on Google code
  that the site is deprecated, any changes will be discarded.
  My patches will go to github only.
  14. Push the change to the Mercurial repository that breaks the build.
  This must be done before August 25.
  15. After checking that it works, set the Google code site to the
  project moved state.  Mercurial keeps working still, but gets the
  older version, with the broken build.
 
 In case you didn't already have the idea:
 In the broken build you might want to point to the HG mirror or to the
 Vim site with documentation for switching.

Yes, I started a page for that, it's not linked anywhere yet:
http://www.vim.org/movetogithub.php

  Done!
 
 Looks good.
 
  Note: steps 9 and 10 may be swapped.  I think it's best to undo the
  build breakage first, so that it's immediately after the commit that
  breaks it.  But I'm not 100% sure this doesn't cause a problem for the
  git cleanup.
 
 I guess it should not make a difference, but as I wrote, I'm not in
 favor of this approach.

-- 
TALL KNIGHT: We are now no longer the Knights Who Say Ni!
ONE KNIGHT:  Ni!
OTHERS:  Sh!
ONE KNIGHT:  (whispers) Sorry.
 Monty Python and the Holy Grail PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-17 Fir de Conversatie Markus Heidelberg
Am Sonntag, 16. August 2015, 15:23:15 schrieb Bram Moolenaar:
 
 Markus Heidelberg wrote:
 
   BTW: you are working on the git cleanup, but is the Mercurial cleanup
   now ready to be committed?  AFAIK it all looks OK, so I could apply this
   to my local repository and push it to Google code, right?
  
  Yes, I started with the Git cleanup script. During that I found another
  tag, which should be slightly moved (to the parent commit) to avoid
  pointing to an empty Git commit after conversion. In the Git cleanup all
  empty commits are removed. So here is a little update to the HG cleanup
  script:
 
 OK, if there is a chance you still find some improvements for the
 Mercurial cleanup, we better wait a bit before doing that.
 
 Once you have it all figured out, I hope you can send me the final
 scripts.  I wouldn't want some small mistake spoil the fun.

OK.

  In my initial mail about repository cleanup from 2015-04-01 I added the
  following item:
  
  * Rename tags to match the normal version notation:
s/-/./g
e.g. v7-4-683 - v7.4.683
  
  What do you think about this one? If you want to apply it, then this has
  to be done in the HG as well to have the same tag names in HG and Git
  repositories and to be consistent in the tag names of the HG mirror.
  If you don't like it, then I'd discard this idea.
 
 I do like the dot instead of the dash.  It only got there because in the
 past it wasn't allowed to have two dots.  Perhaps that dates back from
 the SVN days?
 
 Now that everybody has to switch their setup anyway, might as well do
 this too.  Once we have the switch done we will avoid more changes that
 breaks people's habits.
 
  Maybe you can comment on some other items from the old mail as well.
 
 Can you repeat the relevant questions?

Oh, not that many remaining which needed clarification. New comments by
myself compared to the old mail after MH:

* Unify name and mail for author and commiter, see:
  $ git shortlog --email -s

  These should all be the same person for the current history.

  MH: In the latest git commits the mail is Bram@... (uppercase B), so
  I'd use this.

* Format commit messages to work properly with git commands for the log summary,
  e.g. git shortlog or git log --oneline. The output of these commands is 
ugly at the moment.

  That means adding a blank line after the first line and ideally using
  a descriptive one-liner for the first line. This is the format
  recommended for Git repositories.

  e.g. from this:
Patch 7.2.446
Problem:Crash in GUI when closing the last window in a tabpage. 
(ryo7000)
Solution:   Remove the tabpage from the list before freeing the window.

  to this (from vim_mainline.git):
[7.2.446] Crash in GUI when closing the last window in a tabpage. (ryo7000)

Problem:Crash in GUI when closing the last window in a tabpage. 
(ryo7000)

Solution:   Remove the tabpage from the list before freeing the window.

Patch 7.2.446

  There may be better conversions without duplicating the problem
  description.

  MH: Probably we should discard this because it only makes sense if it
  is continued in your scripts.

* Add the patch description for commits before 7.2.328
  Unfortunately these commit messages do not include the patch
  description, this was from the conversion to HG. Has nothing to do
  with migration to Git, but maybe the effort is worth it.

  MH: I have to see whether the effort is manageable.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-17 Fir de Conversatie Marius Gedminas
On Fri, Aug 14, 2015 at 01:39:18AM +0200, Markus Heidelberg wrote:
 Am Donnerstag, 13. August 2015, 13:14:34 schrieb Bram Moolenaar:
  You mentioned the size of the repository after export to github was
  much larger than the one resulting from the local conversion.  How do
  you see that?
 
 Try this (using your 2nd test repo):
 
 $ git clone https://github.com/vim/vim.git
 [..]
 Receiving objects:  42% (22538/53119), 206.21 MiB | 622.00 KiB/s
 
 - 200 MB already transferred and still 58% to do. I aborted then.
 
 It seems like GitHub optimizes the repository some day later or
 regularly because your first test repo (now at
 https://github.com/vim/vim-old-tryout) has a reasonable compact size:
 Receiving objects: 100% (52960/52960), 33.29 MiB | 657.00 KiB/s, done.

 $ du -sh vim-old-tryout/.git
 36M .git
 
 But I remember my initial clone a few months ago was really big.
 
 Compare the size of .git/ with your locally converted Git repo, this
 must be huge (743 MB for me).

It might be a manual process.

I remember when git clone https://github.com/vim/vim produced a 700 meg .git.
I complained on Twitter and somebody from GitHub noticed and ran a
manual git gc --aggressive (or something like that) on the server side:

  - https://twitter.com/mgedmin/status/581131821796196353
  - https://twitter.com/vmg/status/581144886826672130

If you're planning to do a new conversion, you may need to ask GitHub
admins to do the compaction by hand again.

Marius Gedminas
-- 
If the meanings of true and false were switched, then this sentence
wouldn't be false.
-- Douglas Hofstadter

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


signature.asc
Description: Digital signature


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-17 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

   Maybe you can comment on some other items from the old mail as well.
  
  Can you repeat the relevant questions?
 
 Oh, not that many remaining which needed clarification. New comments by
 myself compared to the old mail after MH:
 
 * Unify name and mail for author and commiter, see:
   $ git shortlog --email -s
 
   These should all be the same person for the current history.
 
   MH: In the latest git commits the mail is Bram@... (uppercase B), so
   I'd use this.

I don't care too much.  All of the commits are actually from me, right?
That the mail address changes at some points, probably because of
switching to some other system or script, isn't really relevant for
someone looking at it.  It's not like they have to find out who
committed a change.

 * Format commit messages to work properly with git commands for the log 
 summary,
   e.g. git shortlog or git log --oneline. The output of these commands is 
 ugly at the moment.
 
   That means adding a blank line after the first line and ideally using
   a descriptive one-liner for the first line. This is the format
   recommended for Git repositories.
 
   e.g. from this:
 Patch 7.2.446
 Problem:Crash in GUI when closing the last window in a tabpage. 
 (ryo7000)
 Solution:   Remove the tabpage from the list before freeing the window.
 
   to this (from vim_mainline.git):
 [7.2.446] Crash in GUI when closing the last window in a tabpage. 
 (ryo7000)
 
 Problem:Crash in GUI when closing the last window in a tabpage. 
 (ryo7000)
 
 Solution:   Remove the tabpage from the list before freeing the window.
 
 Patch 7.2.446
 
   There may be better conversions without duplicating the problem
   description.
 
   MH: Probably we should discard this because it only makes sense if it
   is continued in your scripts.

I had tried different messages, and it's difficult to find one that
works well.  Just using the patch number is consistent at least, but
doesn't give much information.  Using the Problem line has the problem
(eh) that it's truncated at some unpredictable place.  Writing a short
line, like we have it in the README file on the ftp server, would be an
awful lot of work.

 * Add the patch description for commits before 7.2.328
   Unfortunately these commit messages do not include the patch
   description, this was from the conversion to HG. Has nothing to do
   with migration to Git, but maybe the effort is worth it.
 
   MH: I have to see whether the effort is manageable.

I think if someone wants to full history of patches, the ftp server is
more useful.  After all, in the early days the patches were the main
thing, the repository just following that. And before that there was no
repository.

It's unlikely that someone needs to look back to before 7.4.  So let's
just have the patches on 7.4 look good.


We are getting closer to August 25, so let's try to get this done this
week.


-- 
Life is a gift, living is an art.   (Bram Moolenaar)

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-17 Fir de Conversatie Markus Heidelberg
Am Montag, 17. August 2015, 14:49:51 schrieb Marius Gedminas:
 On Fri, Aug 14, 2015 at 01:39:18AM +0200, Markus Heidelberg wrote:
  Am Donnerstag, 13. August 2015, 13:14:34 schrieb Bram Moolenaar:
   You mentioned the size of the repository after export to github was
   much larger than the one resulting from the local conversion.  How do
   you see that?
  
  Try this (using your 2nd test repo):
  
  $ git clone https://github.com/vim/vim.git
  [..]
  Receiving objects:  42% (22538/53119), 206.21 MiB | 622.00 KiB/s
  
  - 200 MB already transferred and still 58% to do. I aborted then.
  
  It seems like GitHub optimizes the repository some day later or
  regularly because your first test repo (now at
  https://github.com/vim/vim-old-tryout) has a reasonable compact size:
  Receiving objects: 100% (52960/52960), 33.29 MiB | 657.00 KiB/s, done.
 
  $ du -sh vim-old-tryout/.git
  36M .git
  
  But I remember my initial clone a few months ago was really big.
  
  Compare the size of .git/ with your locally converted Git repo, this
  must be huge (743 MB for me).
 
 It might be a manual process.
 
 I remember when git clone https://github.com/vim/vim produced a 700 meg .git.
 I complained on Twitter and somebody from GitHub noticed and ran a
 manual git gc --aggressive (or something like that) on the server side:
 
   - https://twitter.com/mgedmin/status/581131821796196353
   - https://twitter.com/vmg/status/581144886826672130

Thanks for the pointers.

 If you're planning to do a new conversion, you may need to ask GitHub
 admins to do the compaction by hand again.

No, we will convert locally and do the necessary repack step, which is
missing from the Google Exporter, ourselves.

Markus

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-16 Fir de Conversatie Markus Heidelberg
Am Freitag, 14. August 2015, 09:42:34 schrieb Christian Brabandt:
 Hi Markus!
 
 On Fr, 14 Aug 2015, Markus Heidelberg wrote:
 
  I'd also prefer to just removing the .hgignore from the history and
  replacing it with .gitignore. What would that mean for the HG mirror,
  Christian?
 
 Hm, I don't know. I guess I can keep it checked in and let git ignore 
 it.

I guess you meant let hg ignore it, didn't you?

But you'd want to have a .hgignore in your mirror.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-16 Fir de Conversatie Markus Heidelberg
Am Samstag, 15. August 2015, 15:33:54 schrieb Bram Moolenaar:
 
 Markus Heidelberg wrote:
 
  Oh, I just noticed, of course we cannot just use a new git
  repository/project on GitHub, otherwise the issues are gone.
  The final official repository has to be pushed to one created by the
  Google exporter therefore.
 
 For the one that's there now I created the repository on github and 
 then
 pushed the locally converted repo to there.  Is there something wrong
 with it, compared to using the one created by the Google exporter?
 So far I thought it would be fine, so long as the name ends up being 
 the
 same.

The name does not matter. The current vim/vim repository does not
contain the issues exported from Google Code, they reside in
vim/vim-old-tryout as well as the single pull request. They move with
the rename of the repository/project.
   
   Oh, the issues are on the repository, not on the project.  I see.
  
  I guess you mean organization instead of project here,
  github.com/vim in this case.
  
  The projects (vim/vim or vim/vim-old-tryout) each contain their own
  repository and issue database.
  
   Well, I didn't see them, since issues were disabled in settings.
   
   I didn't get your remark the issues are gone, I was thinking of
   repository issues, not Vim issues.
   
   Hmm, one can add a repository and delete a repository, but making it
   totally empty and pushing a fresh repo into it appears not to be
   possible.
   
   So, is the conclusion that we need to push the cleaned-up Mercurial
   repository to Google code before doing the export?
  
  No, that doesn't make a difference. You can remove outdated branches and
  tags from the Git repository via git push and overwrite the master
  branch by force-pushing.
 
 I found the --mirror argument (among the big pile of arguments that git
 has).  It appears that git push --mirror will delete anything that
 isn't in the local repo.  Thus it effectively overwrites the github
 repo.  Perhaps I first need to do this from an empty repo, so that we
 are sure everything is deleted.

I gave the --mirror a short try and it seems to work. However, it really
creates a mirror of your local repository, that means it also pushes you
remote branch references. If you have one, then you have to delete it
afterwards with e.g.

  git push origin :origin/master

So it seems to be suitable for the initial push, but the updates of
the master branch and the tags later should be done by an ordinary push.

  As Matthew already wrote, you just have to make sure to delete anything
  you don't overwrite. Since there are so many tags, it is best to just
  delete them all.
 
 OK.  Please give the exact commands to be used.

git push --mirror should do it. I will test it after the Git cleanup is
ready.

 BTW: you are working on the git cleanup, but is the Mercurial cleanup
 now ready to be committed?  AFAIK it all looks OK, so I could apply this
 to my local repository and push it to Google code, right?

Yes, I started with the Git cleanup script. During that I found another
tag, which should be slightly moved (to the parent commit) to avoid
pointing to an empty Git commit after conversion. In the Git cleanup all
empty commits are removed. So here is a little update to the HG cleanup
script:

=

diff --git a/hg-cleanup.sh b/hg-cleanup.sh
index f257220..39cf0fb 100644
--- a/hg-cleanup.sh
+++ b/hg-cleanup.sh
@@ -59,6 +59,7 @@ hg update -C default
 
 # determine the actually wrong tags after manual inspection
 # v7-4-415
+# v7-3-143
 # v7-2-446
 # v7-2-443
 # v7-2-442
@@ -99,6 +100,7 @@ hg tag -f -r f838615313cd5832efa624526a7575668fb40da9 
v7-2-441
 hg tag -f -r b0ebf9d121ff99eb2e1697a35dca528e7ecb8f4c v7-2-442
 hg tag -f -r 0c1e413c32f1f3f8e28ebf8a030cedeeb664cd46 v7-2-443
 hg tag -f -r b619655b31db9469f6fe41932daff7a566079097 v7-2-446
+hg tag -f -r afb476746692322523f167c218803317b87623e3 v7-3-143
 hg tag -f -r 353442863d8558dc89d35ef349b60ebb2e38de0e v7-4-415
 hg tag -r v7-2-167fix v7-2-167
 hg tag --remove v7-2-167fix
@@ -115,7 +117,7 @@ matched version 7.2.167.
 The others have been moved to the correct changeset.
 EOF
 
-hg rebase --dest rebasedest --source tip~18 --collapse --logfile logfile.txt
+hg rebase --dest rebasedest --source tip~19 --collapse --logfile logfile.txt
 rm logfile.txt
 
 # remove unused tag

=

In my initial mail about repository cleanup from 2015-04-01 I added the
following item:

* Rename tags to match the normal version notation:
  s/-/./g
  e.g. v7-4-683 - v7.4.683

What do you think about this one? If you want to apply it, then this has
to be done in the HG as well to have the same tag names in HG and Git
repositories and to be consistent in the tag names of the HG mirror.
If you don't like it, then I'd discard this idea.

Maybe you can comment on some other items from the old mail as well.

-- 
-- 
You received this message from the vim_dev maillist.
Do 

Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-16 Fir de Conversatie Christian Brabandt
On So, 16 Aug 2015, Markus Heidelberg wrote:

 Am Freitag, 14. August 2015, 09:42:34 schrieb Christian Brabandt:
  On Fr, 14 Aug 2015, Markus Heidelberg wrote:
  
   I'd also prefer to just removing the .hgignore from the history and
   replacing it with .gitignore. What would that mean for the HG mirror,
   Christian?
  
  Hm, I don't know. I guess I can keep it checked in and let git ignore 
  it.
 
 I guess you meant let hg ignore it, didn't you?
 But you'd want to have a .hgignore in your mirror.

No I meant git.

I have one working tree, which is a mirror of the git repository and at 
the same time, I am using this working tree for mercurial clone.

What I then do is run a script periodically, that updates the git clone 
and for each (git) commit, apply this commit to mercurial as well and 
push the change.

So if I re-add the .hgignore file, I have to tell git to ignore that 
file using .git/info/exclude (which I already use for ignoring the .hg 
directory).

Best,
Christian
-- 
Der Krieg ist zu langsam für das Medium Fernsehen.
-- Peter Slotterdijk

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-16 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

   No, that doesn't make a difference. You can remove outdated branches and
   tags from the Git repository via git push and overwrite the master
   branch by force-pushing.
  
  I found the --mirror argument (among the big pile of arguments that git
  has).  It appears that git push --mirror will delete anything that
  isn't in the local repo.  Thus it effectively overwrites the github
  repo.  Perhaps I first need to do this from an empty repo, so that we
  are sure everything is deleted.
 
 I gave the --mirror a short try and it seems to work. However, it really
 creates a mirror of your local repository, that means it also pushes you
 remote branch references. If you have one, then you have to delete it
 afterwards with e.g.
 
   git push origin :origin/master
 
 So it seems to be suitable for the initial push, but the updates of
 the master branch and the tags later should be done by an ordinary push.

OK. So we can still chose between using the export from Google code and
building on top of the resulting github repo, or doing the conversion
locally and use --mirror to have it replace the github repo.  I suppose
this depends on how we do the patch on Mercurial to break the build,
which should only be pushed after the conversion to github is fully
successful.  I'll await your suggestions.


  BTW: you are working on the git cleanup, but is the Mercurial cleanup
  now ready to be committed?  AFAIK it all looks OK, so I could apply this
  to my local repository and push it to Google code, right?
 
 Yes, I started with the Git cleanup script. During that I found another
 tag, which should be slightly moved (to the parent commit) to avoid
 pointing to an empty Git commit after conversion. In the Git cleanup all
 empty commits are removed. So here is a little update to the HG cleanup
 script:

OK, if there is a chance you still find some improvements for the
Mercurial cleanup, we better wait a bit before doing that.

Once you have it all figured out, I hope you can send me the final
scripts.  I wouldn't want some small mistake spoil the fun.

 In my initial mail about repository cleanup from 2015-04-01 I added the
 following item:
 
 * Rename tags to match the normal version notation:
   s/-/./g
   e.g. v7-4-683 - v7.4.683
 
 What do you think about this one? If you want to apply it, then this has
 to be done in the HG as well to have the same tag names in HG and Git
 repositories and to be consistent in the tag names of the HG mirror.
 If you don't like it, then I'd discard this idea.

I do like the dot instead of the dash.  It only got there because in the
past it wasn't allowed to have two dots.  Perhaps that dates back from
the SVN days?

Now that everybody has to switch their setup anyway, might as well do
this too.  Once we have the switch done we will avoid more changes that
breaks people's habits.

 Maybe you can comment on some other items from the old mail as well.

Can you repeat the relevant questions?

-- 
Proofread carefully to see if you any words out.

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-15 Fir de Conversatie Bram Moolenaar

Matthew Woehlke wrote:

 On 2015-08-14 14:38, Bram Moolenaar wrote:
  Hmm, one can add a repository and delete a repository, but making it
  totally empty and pushing a fresh repo into it appears not to be
  possible.
 
 As far as non-git content (e.g. issues, pull requests), that may be true.
 
 To empty out the git bits of a repository:
 
   $ git checkout --orphan empty
   $ git checkout master
   $ git reset --hard empty
   $ git branch -d empty
   $ git push --force origin master
   ...delete all other branches and tags...

Thanks, but that looks like another example of how complicated git is...

 The old objects will still be reachable for a while until garbage
 collected, but they'll go away eventually.
 
 If you have the new history ready to go, you can just force-push that
 over the old branches/tags and skip the emptying step (just remember to
 delete anything you don't overwrite).

The git push --mirror command might work better?  We just need to
overwrite the repository with what I have locally, dropping everything
that I don't have locally.

-- 
Mental Floss prevents moral decay!

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-15 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

 Oh, I just noticed, of course we cannot just use a new git
 repository/project on GitHub, otherwise the issues are gone.
 The final official repository has to be pushed to one created by the
 Google exporter therefore.

For the one that's there now I created the repository on github and then
pushed the locally converted repo to there.  Is there something wrong
with it, compared to using the one created by the Google exporter?
So far I thought it would be fine, so long as the name ends up being the
same.
   
   The name does not matter. The current vim/vim repository does not
   contain the issues exported from Google Code, they reside in
   vim/vim-old-tryout as well as the single pull request. They move with
   the rename of the repository/project.
  
  Oh, the issues are on the repository, not on the project.  I see.
 
 I guess you mean organization instead of project here,
 github.com/vim in this case.
 
 The projects (vim/vim or vim/vim-old-tryout) each contain their own
 repository and issue database.
 
  Well, I didn't see them, since issues were disabled in settings.
  
  I didn't get your remark the issues are gone, I was thinking of
  repository issues, not Vim issues.
  
  Hmm, one can add a repository and delete a repository, but making it
  totally empty and pushing a fresh repo into it appears not to be
  possible.
  
  So, is the conclusion that we need to push the cleaned-up Mercurial
  repository to Google code before doing the export?
 
 No, that doesn't make a difference. You can remove outdated branches and
 tags from the Git repository via git push and overwrite the master
 branch by force-pushing.

I found the --mirror argument (among the big pile of arguments that git
has).  It appears that git push --mirror will delete anything that
isn't in the local repo.  Thus it effectively overwrites the github
repo.  Perhaps I first need to do this from an empty repo, so that we
are sure everything is deleted.

 As Matthew already wrote, you just have to make sure to delete anything
 you don't overwrite. Since there are so many tags, it is best to just
 delete them all.

OK.  Please give the exact commands to be used.

BTW: you are working on the git cleanup, but is the Mercurial cleanup
now ready to be committed?  AFAIK it all looks OK, so I could apply this
to my local repository and push it to Google code, right?

-- 
There are 10 kinds of people: Those who understand binary and those who don't.

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-14 Fir de Conversatie Christian Brabandt
Hi Markus!

On Fr, 14 Aug 2015, Markus Heidelberg wrote:

 I'd also prefer to just removing the .hgignore from the history and
 replacing it with .gitignore. What would that mean for the HG mirror,
 Christian?

Hm, I don't know. I guess I can keep it checked in and let git ignore 
it.

Best,
Christian
-- 
Frau Meier will ihrer Nachbarin zeigen, wie toll ihr Sohn schon
rechnen kann:
F. M.: Fritz, was ist drei mal vier?
Fritz: zehn?
F. M.: Sehen sie, nur um eins verrechnet!

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-14 Fir de Conversatie Markus Heidelberg
Am Freitag, 14. August 2015, 15:05:41 schrieb Bram Moolenaar:
 
 Markus Heidelberg wrote:
 
  Am Freitag, 14. August 2015, 01:39:18 schrieb Markus Heidelberg:
   Am Donnerstag, 13. August 2015, 13:14:34 schrieb Bram Moolenaar:

Markus Heidelberg wrote:

[...]

   2. Conversion from HG to Git
   
   
  
  So, what we would need to do is use the export to github for 
  whatever
  functionality it provides, but then wipe the git repository, do the
  conversion from Mercurial to git locally, and then upload the 
  result to
  github.  Since this is going to be the new root for what everybody 
  uses,
  we better make sure this is a clean repository.
 
 Exactly!

OK. So that are the best commands to do this conversion?
   
   Instead of wipe the git repository say remove and create an empty git
   repository to be sure no stale stuff is left. But I guess you already
   did this for your 2nd test repo.
  
  Oh, I just noticed, of course we cannot just use a new git
  repository/project on GitHub, otherwise the issues are gone.
  The final official repository has to be pushed to one created by the
  Google exporter therefore.
 
 For the one that's there now I created the repository on github and then
 pushed the locally converted repo to there.  Is there something wrong
 with it, compared to using the one created by the Google exporter?
 So far I thought it would be fine, so long as the name ends up being the
 same.

The name does not matter. The current vim/vim repository does not
contain the issues exported from Google Code, they reside in
vim/vim-old-tryout as well as the single pull request. They move with
the rename of the repository/project.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-14 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

   Oh, I just noticed, of course we cannot just use a new git
   repository/project on GitHub, otherwise the issues are gone.
   The final official repository has to be pushed to one created by the
   Google exporter therefore.
  
  For the one that's there now I created the repository on github and then
  pushed the locally converted repo to there.  Is there something wrong
  with it, compared to using the one created by the Google exporter?
  So far I thought it would be fine, so long as the name ends up being the
  same.
 
 The name does not matter. The current vim/vim repository does not
 contain the issues exported from Google Code, they reside in
 vim/vim-old-tryout as well as the single pull request. They move with
 the rename of the repository/project.

Oh, the issues are on the repository, not on the project.  I see.
Well, I didn't see them, since issues were disabled in settings.

I didn't get your remark the issues are gone, I was thinking of
repository issues, not Vim issues.

Hmm, one can add a repository and delete a repository, but making it
totally empty and pushing a fresh repo into it appears not to be
possible.

So, is the conclusion that we need to push the cleaned-up Mercurial
repository to Google code before doing the export?

-- 
If your life is a hard drive,
Christ can be your backup.

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-14 Fir de Conversatie Matthew Woehlke
On 2015-08-14 14:38, Bram Moolenaar wrote:
 Hmm, one can add a repository and delete a repository, but making it
 totally empty and pushing a fresh repo into it appears not to be
 possible.

As far as non-git content (e.g. issues, pull requests), that may be true.

To empty out the git bits of a repository:

  $ git checkout --orphan empty
  $ git checkout master
  $ git reset --hard empty
  $ git branch -d empty
  $ git push --force origin master
  ...delete all other branches and tags...

The old objects will still be reachable for a while until garbage
collected, but they'll go away eventually.

If you have the new history ready to go, you can just force-push that
over the old branches/tags and skip the emptying step (just remember to
delete anything you don't overwrite).

-- 
Matthew

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-14 Fir de Conversatie Markus Heidelberg
Am Freitag, 14. August 2015, 20:38:49 schrieb Bram Moolenaar:
 
 Markus Heidelberg wrote:
 
Oh, I just noticed, of course we cannot just use a new git
repository/project on GitHub, otherwise the issues are gone.
The final official repository has to be pushed to one created by the
Google exporter therefore.
   
   For the one that's there now I created the repository on github and then
   pushed the locally converted repo to there.  Is there something wrong
   with it, compared to using the one created by the Google exporter?
   So far I thought it would be fine, so long as the name ends up being the
   same.
  
  The name does not matter. The current vim/vim repository does not
  contain the issues exported from Google Code, they reside in
  vim/vim-old-tryout as well as the single pull request. They move with
  the rename of the repository/project.
 
 Oh, the issues are on the repository, not on the project.  I see.

I guess you mean organization instead of project here,
github.com/vim in this case.

The projects (vim/vim or vim/vim-old-tryout) each contain their own
repository and issue database.

 Well, I didn't see them, since issues were disabled in settings.
 
 I didn't get your remark the issues are gone, I was thinking of
 repository issues, not Vim issues.
 
 Hmm, one can add a repository and delete a repository, but making it
 totally empty and pushing a fresh repo into it appears not to be
 possible.
 
 So, is the conclusion that we need to push the cleaned-up Mercurial
 repository to Google code before doing the export?

No, that doesn't make a difference. You can remove outdated branches and
tags from the Git repository via git push and overwrite the master
branch by force-pushing.

As Matthew already wrote, you just have to make sure to delete anything
you don't overwrite. Since there are so many tags, it is best to just
delete them all.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-14 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

   OK, then I would document a procedure for local HG to Git conversion and
   create a script for Git repository cleanup.
  
  I did:
  
   % mkdir vim-git
   % cd vim-git
   % git init
   % hg-fast-export -r ../hg-vim74-clean
 
 On Arch Linux I had to set PYTHON=python2 for this command because the
 default python is a symbolic link to python3.
 
   % git checkout
 
 And then, as written in my previous mail, additionally:
 
  % git repack -a -d -f
  % git gc

OK.

 I guess you got the hg-fast-export from one of these locations?
 http://repo.or.cz/w/fast-export.git
 https://github.com/frej/fast-export

On Ubuntu it's a package that can be installed.

  Looks like it worked.  I have replaced the vim repository on github
  with the cleaned up and locally converted repository.
  Please have a look: https://github.com/vim/vim
 
 I aborted the clone, despite not having to wait too long for it to
 complete, but maybe you can create a new repo with the packfile
 optimization applied.
 From a quick look online, it seems fine.
 
 I saw you added the .gitignore already in the HG repo. I rather thought
 of creating it as part of the cleanup based on .hgignore, then for the
 whole history since addition of .hgignore. However, this can still be
 done.

I thought the .gitignore is useful anyway.  It was only sitting in the
git repo so far, and to avoid the first version of that being broken
I thought it would be good to include now.

 I'd also prefer to just removing the .hgignore from the history and
 replacing it with .gitignore. What would that mean for the HG mirror,
 Christian?

I'm not sure what happens when mirrorring the git repo to Mercurial.
If it converts the .gitignore to .hgignore an existing .hgignore might
be a problem maybe?

  I have commited one new patch on top of it to check if that works.
  It looks OK, but I got a long list of messages like this:
  
  ...
   * [new tag] v7-4-823 - v7-4-823
   * [new tag] v7-4-824 - v7-4-824
   * [new tag] v7-4-825 - v7-4-825
   * [new tag] v7-4a - v7-4a
   * [new tag] v7-4a-001 - v7-4a-001
   * [new tag] v7-4a-002 - v7-4a-002
   * [new tag] v7-4a-003 - v7-4a-003
  ...
   * [new tag] v7-4b-019 - v7-4b-019
   * [new tag] v7-4b-020 - v7-4b-020
   * [new tag] v7-4b-021 - v7-4b-021
   * [new tag] v7-4b-022 - v7-4b-022
 
 These messages occur for all the tags that have just been pushed.
 
  Perhaps the original push to github should have been followed by push
  --tags ?  Not sure if it makes any difference doing this after another
  commit+push.
 
 For the repository it doesn't make a difference if you forgot to push
 the tags and do it later after unrelated commits. These are all
 lightweight tags, just labels/pointers to a specific commit and not tied
 to the history tree (DAG) at all.
 The users would receive the missing tags with the next git fetch.

OK, so doing it earlier just makes it nicer.

  Please let me know if this looks OK.  If yes then I'll do it for real
  this weekend.
 
 What do you mean with real? Only publishing the HG cleanup?
 Because for the Git cleanup I have to prepare the script first.

OK, I'll have to wait for that then.  With for real I mean that we
tell everybody to switch to the new repository and we stop updating the
old one on Google code.

-- 
FATHER:You only killed the bride's father - that's all -
LAUNCELOT: Oh dear, I didn't really mean to...
FATHER:Didn't mean to?  You put your sword right through his head!
LAUNCELOT: Gosh - Is he all right?
 Monty Python and the Holy Grail PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-13 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

[...]

   2. Conversion from HG to Git
   
   
  
  So, what we would need to do is use the export to github for whatever
  functionality it provides, but then wipe the git repository, do the
  conversion from Mercurial to git locally, and then upload the result to
  github.  Since this is going to be the new root for what everybody uses,
  we better make sure this is a clean repository.
 
 Exactly!

OK. So that are the best commands to do this conversion?  I suppose I
can try this out now, since the github repository is for testing only.

You mentioned the size of the repository after export to github was
much larger than the one resulting from the local conversion.  How do
you see that?

   3. Cleanup in the Git repository
   
   
   There were suggestions to use the Git mirror from vim-jp as base for the
   official repository, don't know if this is still an option.
  
  Only if there are real advantages.  I tend to think not.
 
 OK, then I would document a procedure for local HG to Git conversion and
 create a script for Git repository cleanup.

Can you give me that script?  I could give it a try.

Actually, what I can do for testing is run the cleanup script for
Mercurial, without pushing the changes back to Google code.  Then run
the local conversion script and do push the result to github.  Then we
should see exactly what we would get eventually, while not touching what
is currently the official repository.  Sounds like a safe and useful
exercise.

-- 
No letters of the alphabet were harmed in the creation of this message.

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-13 Fir de Conversatie Markus Heidelberg
Am Donnerstag, 13. August 2015, 13:14:34 schrieb Bram Moolenaar:
 
 Markus Heidelberg wrote:
 
 [...]
 
2. Conversion from HG to Git


   
   So, what we would need to do is use the export to github for whatever
   functionality it provides, but then wipe the git repository, do the
   conversion from Mercurial to git locally, and then upload the result to
   github.  Since this is going to be the new root for what everybody uses,
   we better make sure this is a clean repository.
  
  Exactly!
 
 OK. So that are the best commands to do this conversion?

Instead of wipe the git repository say remove and create an empty git
repository to be sure no stale stuff is left. But I guess you already
did this for your 2nd test repo.

Also the Git cleanup has to be added as last step.

 I suppose I
 can try this out now, since the github repository is for testing only.
 
 You mentioned the size of the repository after export to github was
 much larger than the one resulting from the local conversion.  How do
 you see that?

Try this (using your 2nd test repo):

$ git clone https://github.com/vim/vim.git
[..]
Receiving objects:  42% (22538/53119), 206.21 MiB | 622.00 KiB/s

- 200 MB already transferred and still 58% to do. I aborted then.

It seems like GitHub optimizes the repository some day later or
regularly because your first test repo (now at
https://github.com/vim/vim-old-tryout) has a reasonable compact size:
Receiving objects: 100% (52960/52960), 33.29 MiB | 657.00 KiB/s, done.

$ du -sh vim-old-tryout/.git
36M .git

But I remember my initial clone a few months ago was really big.

Compare the size of .git/ with your locally converted Git repo, this
must be huge (743 MB for me).

And if you clone this big repository and do not repack yourself, you
have a great loss of performance, try e.g. git log --graph.

The difference does not come from the conversion script done locally,
but from the missing packfile optimization, see that section in
git-fast-import(1), which recommends this:

$ git repack -a -d -f

And then for your local clone (this will not have a positive effect for
the published repo):

$ git gc

3. Cleanup in the Git repository


There were suggestions to use the Git mirror from vim-jp as base for the
official repository, don't know if this is still an option.
   
   Only if there are real advantages.  I tend to think not.
  
  OK, then I would document a procedure for local HG to Git conversion and
  create a script for Git repository cleanup.
 
 Can you give me that script?  I could give it a try.

I hope to get the cleanup script done during this weekend.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-13 Fir de Conversatie Markus Heidelberg
Am Donnerstag, 13. August 2015, 23:01:07 schrieb Bram Moolenaar:
 
 Markus Heidelberg wrote:
 
  OK, then I would document a procedure for local HG to Git conversion and
  create a script for Git repository cleanup.
 
 I did:
 
  % mkdir vim-git
  % cd vim-git
  % git init
  % hg-fast-export -r ../hg-vim74-clean

On Arch Linux I had to set PYTHON=python2 for this command because the
default python is a symbolic link to python3.

  % git checkout

And then, as written in my previous mail, additionally:

 % git repack -a -d -f
 % git gc

I guess you got the hg-fast-export from one of these locations?
http://repo.or.cz/w/fast-export.git
https://github.com/frej/fast-export

 Looks like it worked.  I have replaced the vim repository on github
 with the cleaned up and locally converted repository.
 Please have a look: https://github.com/vim/vim

I aborted the clone, despite not having to wait too long for it to
complete, but maybe you can create a new repo with the packfile
optimization applied.
From a quick look online, it seems fine.

I saw you added the .gitignore already in the HG repo. I rather thought
of creating it as part of the cleanup based on .hgignore, then for the
whole history since addition of .hgignore. However, this can still be
done.
I'd also prefer to just removing the .hgignore from the history and
replacing it with .gitignore. What would that mean for the HG mirror,
Christian?

 I have commited one new patch on top of it to check if that works.
 It looks OK, but I got a long list of messages like this:
 
 ...
  * [new tag] v7-4-823 - v7-4-823
  * [new tag] v7-4-824 - v7-4-824
  * [new tag] v7-4-825 - v7-4-825
  * [new tag] v7-4a - v7-4a
  * [new tag] v7-4a-001 - v7-4a-001
  * [new tag] v7-4a-002 - v7-4a-002
  * [new tag] v7-4a-003 - v7-4a-003
 ...
  * [new tag] v7-4b-019 - v7-4b-019
  * [new tag] v7-4b-020 - v7-4b-020
  * [new tag] v7-4b-021 - v7-4b-021
  * [new tag] v7-4b-022 - v7-4b-022

These messages occur for all the tags that have just been pushed.

 Perhaps the original push to github should have been followed by push
 --tags ?  Not sure if it makes any difference doing this after another
 commit+push.

For the repository it doesn't make a difference if you forgot to push
the tags and do it later after unrelated commits. These are all
lightweight tags, just labels/pointers to a specific commit and not tied
to the history tree (DAG) at all.
The users would receive the missing tags with the next git fetch.

 Please let me know if this looks OK.  If yes then I'll do it for real
 this weekend.

What do you mean with real? Only publishing the HG cleanup?
Because for the Git cleanup I have to prepare the script first.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-13 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

 OK, then I would document a procedure for local HG to Git conversion and
 create a script for Git repository cleanup.

I did:

 % mkdir vim-git
 % cd vim-git
 % git init
 % hg-fast-export -r ../hg-vim74-clean
 % git checkout

Looks like it worked.  I have replaced the vim repository on github
with the cleaned up and locally converted repository.
Please have a look: https://github.com/vim/vim

I have commited one new patch on top of it to check if that works.
It looks OK, but I got a long list of messages like this:

...
 * [new tag] v7-4-823 - v7-4-823
 * [new tag] v7-4-824 - v7-4-824
 * [new tag] v7-4-825 - v7-4-825
 * [new tag] v7-4a - v7-4a
 * [new tag] v7-4a-001 - v7-4a-001
 * [new tag] v7-4a-002 - v7-4a-002
 * [new tag] v7-4a-003 - v7-4a-003
...
 * [new tag] v7-4b-019 - v7-4b-019
 * [new tag] v7-4b-020 - v7-4b-020
 * [new tag] v7-4b-021 - v7-4b-021
 * [new tag] v7-4b-022 - v7-4b-022

Perhaps the original push to github should have been followed by push
--tags ?  Not sure if it makes any difference doing this after another
commit+push.


Please let me know if this looks OK.  If yes then I'll do it for real
this weekend.

-- 
Trees moving back and forth is what makes the wind blow.

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-12 Fir de Conversatie Bram Moolenaar

Christian Brabandt wrote:

 On Sa, 08 Aug 2015, Bram Moolenaar wrote:
 
  I would rather not take the risk of messing up the Mercurial repository.
  Thus would the best approach be to do the conversion locally and replace
  the git repository on github?  We could even try that out now, since the
  github repository is for testing anyway.
 
 Since Markus has already provided the work and provided 2 versions of 
 the mercurial clean up script, I think it is safe to use. Just make 
 sure, to enable the rebase extension before running the script. I attach 
 the version, I used last (basically the patched version that Markus 
 provided last time).
 
 To be really safe, you could use a separate checkout and only push back, 
 if no error happened. This way, you won't mess up your normal working 
 copy.
 
 And after all, it's a VCS, so if something gets messed up, we can 
 revert, can't we?

Not once committed to the server...

So, to make sure we get this right, this script can be executed on a
clean clone of the current Mercurial repository, and, if everything goes
well, commited and pushed back to Google code.  That is, it can be done
before doing the export to github.  Right?
So, I could actually run it any day.

-- 
BLACK KNIGHT:  I move for no man.
ARTHUR:So be it!
[hah] [parry thrust]
[ARTHUR chops the BLACK KNIGHT's left arm off]
ARTHUR:Now stand aside, worthy adversary.
BLACK KNIGHT:  'Tis but a scratch.
  The Quest for the Holy Grail (Monty Python)

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-12 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

 sorry for the late reply. I'm pretty busy and also needed a bit to find
 the proper words. It also takes some time to get into this topic again
 after several months of silence.

Thanks for the long reply.

 Am Samstag, 8. August 2015, 21:43:13 schrieb Bram Moolenaar:
  
  Markus Heidelberg wrote:
  
   For me, a proper project history from developer view is equal to good
   documentation from user view.
  
  It's been some since we looked at this, and the information is now
  scattered over several messages.
  
  Markus, could you make the step-by-step description of what needs to be
  done?  I need exact steps and some hints about what to do when there are
  errors.
 
 My proposal was:
 1. Cleanup in the HG repository
 2. Conversion from HG to Git
 3. Cleanup in the Git repository
 
 +++ In detail: +++
 
 1. Cleanup in the HG repository
 ***
 
 This is covered by the existing HG cleanup script. Attached again
 because compared to the latest version Christian sent today, I've added
 a check whether the rebase extension is enabled.

I think I already have it enabled, my .hgrc contains:

[extensions]
hgext.convert=
hgext.extdiff=
rebase =
mq =


 Basically it does two things:
 - close the unused or invalid branches
 - fix and complete the tags
 
 My test runs I performed like this:
 
   # copy the original HG repository
   cp -a vim-hg vim-hg-copy
   
   # clone the copy
   hg clone vim-hg-copy vim-hg-copycloned
 
   # run the cleanup script
   cd vim-hg-copycloned
   sh ../cleanup/hg-cleanup.sh
 
   # push back from the cloned copy to the initial copy to verify that no
   # history has been rewritten, elsewise this command would fail
   hg push

So, what you are doing here is to simulate pushing back to the
Mercurial repository on Google code.  Although the hg push could also
be done on the vim-hg-copy repository, would do the same thing.

As I asked on Christian's message: We can do this even before exporting
to github, right?

   # verify the result manually with hgk or hg log, compare with the
   # original repository
   cd ../vim-hg-copy
   hgk
   hg log --style compact --graph
 
 I don't expect errors, so I can't predict what to do when any will
 occur. Just ask in that case.
 
 2. Conversion from HG to Git
 
 
  I do intend to use the export to github feature of the Google code
  site, so that (hopefully) issues will be deep-linked to their new place.
  I do assume that after the Mercurial repository is converted to git, we
  could just wipe it out and replace it with another.
 
 What does issues deep-linking mean exactly? Automatically redirecting
 from an issue URL on the old Google site to an issue URL on the new
 GitHub site? I don't know about the dimension of
 
   In the future, the page will automatically redirect to well-known
   project hosting services
 
 from the Exporter FAQ [1], but it sounds neither are you sure about this
 topic.
 On the other side, is this redirection really that important?

I also don't know what it means exactly, but we can at least use this as
the best we'll ever get.

 [1] https://code.google.com/p/support-tools/wiki/GitHubExporterFAQ
 
 I tested the Export to GitHub button today.
 
 I saw the drawbacks with issues conversion, which you already mentioned
 in another mail, i.e. the original author and date information is only
 added in the comment. Obviously it is not possible to make a relation
 from a Google user to a GitHub user. The problem with the date is that
 the GitHub API is used for importing, which always uses the current time
 of course.
 
 I don't know which script runs in the background for repository
 conversion, but it does not create a completely valid result.
 I had already seen this problem in your Git test repository, a local
 conversion with the hg-fast-export scripts worked properly and this is
 the way I'd go.
 
 The problems in the repository after online conversion:
 
 - There are 3 history roots instead of just 1, the branches do start
   without parent instead of branching off from a particular commit.
 - The merge parents of the two merge commits are in the wrong and
   logically less correct order (compare with git log --graph).
 - The clone is several hundreds MB big, it seems the repository is not
   repacked after conversion. Strange, I wonder why this hasn't been
   fixed yet. After the repack, it is only 40 MB.

So, what we would need to do is use the export to github for whatever
functionality it provides, but then wipe the git repository, do the
conversion from Mercurial to git locally, and then upload the result to
github.  Since this is going to be the new root for what everybody uses,
we better make sure this is a clean repository.


 3. Cleanup in the Git repository
 
 
 There were suggestions to use the Git mirror from vim-jp as base for the
 official repository, don't know if this is still an option.

Only 

Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-12 Fir de Conversatie Markus Heidelberg
Am Mittwoch, 12. August 2015, 23:20:21 schrieb Bram Moolenaar:
 
 Markus Heidelberg wrote:
 
  1. Cleanup in the HG repository
  ***
  
  a check whether the rebase extension is enabled.
 
 I think I already have it enabled, my .hgrc contains:
 
 [extensions]
 hgext.convert=
 hgext.extdiff=
 rebase =
 mq =

Yes, it is enabled.

  Basically it does two things:
  - close the unused or invalid branches
  - fix and complete the tags
  
  My test runs I performed like this:
  
# copy the original HG repository
cp -a vim-hg vim-hg-copy

# clone the copy
hg clone vim-hg-copy vim-hg-copycloned
  
# run the cleanup script
cd vim-hg-copycloned
sh ../cleanup/hg-cleanup.sh
  
# push back from the cloned copy to the initial copy to verify that no
# history has been rewritten, elsewise this command would fail
hg push
 
 So, what you are doing here is to simulate pushing back to the
 Mercurial repository on Google code.  Although the hg push could also
 be done on the vim-hg-copy repository, would do the same thing.

Yes, some kind of simulation for the public push later.

Pushing from vim-hg-copy (if having executed the script there or after
having pushed from vim-hg-copycloned to it) would push to Google.

You can easily see the push destination in file .hg/hgrc to avoid the
fear of an undesired public push.

 As I asked on Christian's message: We can do this even before exporting
 to github, right?

Yes.

  2. Conversion from HG to Git
  
  
 
 So, what we would need to do is use the export to github for whatever
 functionality it provides, but then wipe the git repository, do the
 conversion from Mercurial to git locally, and then upload the result to
 github.  Since this is going to be the new root for what everybody uses,
 we better make sure this is a clean repository.

Exactly!

  3. Cleanup in the Git repository
  
  
  There were suggestions to use the Git mirror from vim-jp as base for the
  official repository, don't know if this is still an option.
 
 Only if there are real advantages.  I tend to think not.

OK, then I would document a procedure for local HG to Git conversion and
create a script for Git repository cleanup.

  But the script won't mess up anything in the first place.
 
 Fingers crossed!

:)

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-11 Fir de Conversatie Markus Heidelberg
Hi Bram,

sorry for the late reply. I'm pretty busy and also needed a bit to find
the proper words. It also takes some time to get into this topic again
after several months of silence.

Am Samstag, 8. August 2015, 21:43:13 schrieb Bram Moolenaar:
 
 Markus Heidelberg wrote:
 
  For me, a proper project history from developer view is equal to good
  documentation from user view.
 
 It's been some since we looked at this, and the information is now
 scattered over several messages.
 
 Markus, could you make the step-by-step description of what needs to be
 done?  I need exact steps and some hints about what to do when there are
 errors.

My proposal was:
1. Cleanup in the HG repository
2. Conversion from HG to Git
3. Cleanup in the Git repository

+++ In detail: +++

1. Cleanup in the HG repository
***

This is covered by the existing HG cleanup script. Attached again
because compared to the latest version Christian sent today, I've added
a check whether the rebase extension is enabled.

Basically it does two things:
- close the unused or invalid branches
- fix and complete the tags

My test runs I performed like this:

  # copy the original HG repository
  cp -a vim-hg vim-hg-copy
  
  # clone the copy
  hg clone vim-hg-copy vim-hg-copycloned

  # run the cleanup script
  cd vim-hg-copycloned
  sh ../cleanup/hg-cleanup.sh

  # push back from the cloned copy to the initial copy to verify that no
  # history has been rewritten, elsewise this command would fail
  hg push

  # verify the result manually with hgk or hg log, compare with the
  # original repository
  cd ../vim-hg-copy
  hgk
  hg log --style compact --graph

I don't expect errors, so I can't predict what to do when any will
occur. Just ask in that case.

2. Conversion from HG to Git


 I do intend to use the export to github feature of the Google code
 site, so that (hopefully) issues will be deep-linked to their new place.
 I do assume that after the Mercurial repository is converted to git, we
 could just wipe it out and replace it with another.

What does issues deep-linking mean exactly? Automatically redirecting
from an issue URL on the old Google site to an issue URL on the new
GitHub site? I don't know about the dimension of

  In the future, the page will automatically redirect to well-known
  project hosting services

from the Exporter FAQ [1], but it sounds neither are you sure about this
topic.
On the other side, is this redirection really that important?

[1] https://code.google.com/p/support-tools/wiki/GitHubExporterFAQ

I tested the Export to GitHub button today.

I saw the drawbacks with issues conversion, which you already mentioned
in another mail, i.e. the original author and date information is only
added in the comment. Obviously it is not possible to make a relation
from a Google user to a GitHub user. The problem with the date is that
the GitHub API is used for importing, which always uses the current time
of course.

I don't know which script runs in the background for repository
conversion, but it does not create a completely valid result.
I had already seen this problem in your Git test repository, a local
conversion with the hg-fast-export scripts worked properly and this is
the way I'd go.

The problems in the repository after online conversion:

- There are 3 history roots instead of just 1, the branches do start
  without parent instead of branching off from a particular commit.
- The merge parents of the two merge commits are in the wrong and
  logically less correct order (compare with git log --graph).
- The clone is several hundreds MB big, it seems the repository is not
  repacked after conversion. Strange, I wonder why this hasn't been
  fixed yet. After the repack, it is only 40 MB.

3. Cleanup in the Git repository


There were suggestions to use the Git mirror from vim-jp as base for the
official repository, don't know if this is still an option.
Of course this cleanup step, which required history rewrite, would have
to be omitted in that case and I see hardly any benefit in using
vim-jp's repo.

I won't repeat the cleanup options in the state we are now, but leave it
for after having finished the first step.

+++ End of details +++

 I would rather not take the risk of messing up the Mercurial repository.
 Thus would the best approach be to do the conversion locally and replace
 the git repository on github?  We could even try that out now, since the
 github repository is for testing anyway.

I invested quite a bit of time and I'm not eager to change the HG
cleanup into a Git cleanup, having lots of the spent time wasted.

The cleanup script runs locally on your local repository as described
above. There is nothing, which can be messed up without being able to
recognize it in the result before publishing. And as Christian wrote, it
can always be fixed in case some mess gets published.
But the script won't mess up 

Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-11 Fir de Conversatie Christian Brabandt
On Sa, 08 Aug 2015, Bram Moolenaar wrote:

 I would rather not take the risk of messing up the Mercurial repository.
 Thus would the best approach be to do the conversion locally and replace
 the git repository on github?  We could even try that out now, since the
 github repository is for testing anyway.

Since Markus has already provided the work and provided 2 versions of 
the mercurial clean up script, I think it is safe to use. Just make 
sure, to enable the rebase extension before running the script. I attach 
the version, I used last (basically the patched version that Markus 
provided last time).

To be really safe, you could use a separate checkout and only push back, 
if no error happened. This way, you won't mess up your normal working 
copy.

And after all, it's a VCS, so if something gets messed up, we can 
revert, can't we?

Best,
Christian
-- 
Man glaubt gar nicht, wie schwer es oft ist, eine Tat in einen
Gedanken umzusetzen.
-- Emil Gött

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


clean_repo.sh
Description: Bourne shell script


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-11 Fir de Conversatie Nazri Ramliy
On Wed, Aug 12, 2015 at 6:51 AM, Markus Heidelberg  #!/bin/sh
 # Vim HG repository cleanup

 hg config extensions.rebase || (echo -e Rebase extension has to be enabled 
 in ~/.hgrc:\n[extensions]\nrebase =  exit 1)

The exit 1 above won't exit the shell script - it exits only the
subshell. Perhaps you meant to use braces instead of parenthesis?:

hg config extensions.rebase || { echo -e Rebase extension has to
be enabled in ~/.hgrc:\n[extensions]\nrebase =  exit 1; }


nazri

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-11 Fir de Conversatie Markus Heidelberg
Am Mittwoch, 12. August 2015, 08:50:55 schrieb Nazri Ramliy:
 On Wed, Aug 12, 2015 at 6:51 AM, Markus Heidelberg  #!/bin/sh
  # Vim HG repository cleanup
 
  hg config extensions.rebase || (echo -e Rebase extension has to be enabled 
  in ~/.hgrc:\n[extensions]\nrebase =  exit 1)
 
 The exit 1 above won't exit the shell script - it exits only the
 subshell. Perhaps you meant to use braces instead of parenthesis?:
 
 hg config extensions.rebase || { echo -e Rebase extension has to
 be enabled in ~/.hgrc:\n[extensions]\nrebase =  exit 1; }

Oh, I thought I tested this addition with context, but it seems I just
tested this single line on the command line. I guess this syntax came
from some Windows Batch spook in my head.

Markus

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-10 Fir de Conversatie Bram Moolenaar

I wrote:

 Markus Heidelberg wrote:
 
  For me, a proper project history from developer view is equal to good
  documentation from user view.
 
 It's been some since we looked at this, and the information is now
 scattered over several messages.
 
 Markus, could you make the step-by-step description of what needs to be
 done?  I need exact steps and some hints about what to do when there are
 errors.
 
 I do intend to use the export to github feature of the Google code
 site, so that (hopefully) issues will be deep-linked to their new place.
 I do assume that after the Mercurial repository is converted to git, we
 could just wipe it out and replace it with another.
 
 I would rather not take the risk of messing up the Mercurial repository.
 Thus would the best approach be to do the conversion locally and replace
 the git repository on github?  We could even try that out now, since the
 github repository is for testing anyway.

Looks like Markus is not responding.  Anyone else who would like to take
this on?  We don't have much time left.

-- 
ARTHUR:  I did say sorry about the `old woman,' but from the behind you
 looked--
DENNIS:  What I object to is you automatically treat me like an inferior!
ARTHUR:  Well, I AM king...
  The Quest for the Holy Grail (Monty Python)

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-08-08 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

 For me, a proper project history from developer view is equal to good
 documentation from user view.

It's been some since we looked at this, and the information is now
scattered over several messages.

Markus, could you make the step-by-step description of what needs to be
done?  I need exact steps and some hints about what to do when there are
errors.

I do intend to use the export to github feature of the Google code
site, so that (hopefully) issues will be deep-linked to their new place.
I do assume that after the Mercurial repository is converted to git, we
could just wipe it out and replace it with another.

I would rather not take the risk of messing up the Mercurial repository.
Thus would the best approach be to do the conversion locally and replace
the git repository on github?  We could even try that out now, since the
github repository is for testing anyway.

-- 
CUSTOMER: You're not fooling anyone y'know.  Look, isn't there something
  you can do?
DEAD PERSON:  I feel happy... I feel happy.
[whop]
CUSTOMER: Ah, thanks very much.
MORTICIAN:Not at all.  See you on Thursday.
CUSTOMER: Right.
  The Quest for the Holy Grail (Monty Python)

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-16 Fir de Conversatie Ernie Rael


On 4/16/2015 1:33 PM, Nikolay Pavlov wrote:

More powerful?! Try to add phases/changeset obsolescense/branches/etc to git.

The point is that this “sharper knife” has an architecture that
prevents adding feature to the core. You can do almost anything with
the core using plugins for mercurial, but maximum thing you can do
with git



There's an interesting article I ran into earlier today from facebook 
develop


   
https://code.facebook.com/posts/218678814984400/scaling-mercurial-at-facebook/

about how they switched from git to mercurial because they needed to 
work on their source control system to better scale. Bottom line


   Our engineers were comfortable with Git and we preferred to stay
   with a familiar tool, so we took a long, hard look at improving it
   to work at scale. After much deliberation, we concluded that Git's
   internals would be difficult to work with for an ambitious scaling
   project.


--
--
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-16 Fir de Conversatie Nikolay Pavlov
2015-04-16 9:36 GMT+03:00 Roland Eggner ed...@systemanalysen.net:
 On 2015-04-14 Tuesday at 20:00 +0300 Nikolay Pavlov wrote:
 2015-04-14 17:37 GMT+03:00 Roland Eggner ed...@systemanalysen.net:
  @Bram, @Christian, @all
  ───
  During some 10 years of almost daily usage of mercurial I have learned, I 
  can
  usefully apply the philosophy, which Bram has provided in his book „Seven 
  habits
  of effective text editing“:
  •  Usage of a version management system will  _save_  workload rather than 
  to
 add workload, as soon as I switch from “insane” to “sane” thinking 
  patterns.
  •  Examples for “insane” thinking patterns are:
 How can I undo mercurial commands?
 How can I edit the repository?
 How can I work on a remote repository?
  •  Examples for “sane” thinking and usage patterns are:
 Whenever I am not absolutely sure about the consequences of my next 
  action,
 I run “hg clone …” firstly.  On decent file systems this is cheap 
  because
 only file names are copied, not file contents.  Dependent on the outcome
 I drop the older or the newer repository later -- this way I have no 
  need for
 any kind of undo actions and can relax.
 Every “hg pull” is followed by a “hg clone” or something equivalent, 
  local
 repositories used for pulling are used for nothing else -- this way in 
  the
 event of a failed merge or a failed “fast forward” I can just drop the
 concerning repository clone and reuse another local clone.
 For development as a basic principle I prefer local repositories.  
  Apart from
 rare emergency cases, I use remote repositories for publishing and 
  nothing
 else.
 
  For the currently discussed use case of Christian this means:
  •  I would consider running the script remotely  _only_  in the case of
 full-fledged SSH access and after at least one remotely executed “hg 
  clone”.
  •  In any other case and assuming network access without WLAN shortcomings,
 I would pull, clone locally at least once, run the script locally, 
  check the
 result, if it satisfies then delete the remote repository and recreate 
  it by
 pushing (deletion is required in this case because pushing allows only
 appending).
 
  For  _new_  projects I use git rather than mercurial since approximately 
  two
  years.  Some of the reasons are:
  •  git is better documented:  just compare
 http://git-htmldocs.googlecode.com/git/git.html
 http://mercurial.selenic.com/wiki/ManPages

 You need to compare `hg help {command}` and `git help {command}`. `git
 help {command}` redirects to `man git-{command}`, `hg help {command}`
 uses docstrings and command definitions. They both have a reason to
 provide documentation the way they do it:

 - Using `man` is simpler and it assumes that software (package manager
 mainly) used to install git addons is able to install man pages.
 - Using docstrings is more pythonic and ­`--editable` installs of
 mercurial extensions will for sure *not* provide man pages. This
 variant is more convenient for the extension developer.

 I can also say that while git is better documented, its documentation
 is *worse*. When I look at `hg help something` I usually understand
 immediately what I need to do. When I look at `git help something` I
 need to parse a lot of currently useless text, sometimes just to find
 out that I picked help for the wrong command.

 I prefer the html-documentation, it allows more convenient jumping between
 documents.

 E.g. “git help log” and “git help diff” are huge man pages, yes, but this is
 easily solved:  I use the pager less, enter a perl search expression and 
 libpcre
 does the parsing for me.

This only works as long as the search succeeds. If it does not you
have no way to know whether it does not succeed because functionality
is missing (at least from this command) or because man page authors
use different wording other then reading the whole documentation.



  •  In my experience git was the very first tool with complete and flawless
 Unicode support -- even nowadays only few can compete in this concern
 (perl-5.12+, zsh-5.0+).  This stays in contrast to mercurial:  “hg diff 
  …”
 occasionally outputs invalid Unicode characters, because trimming of the
 function name field ignores boundaries of multibyte characters -- this 
  is
 even noted in the mercurial repository since several years, and there 
  seems
 to be no intention to fix the bug.  I have discussed two other examples 
  of --
 in my subjective view -- odd design decisions of mercurial with the
 developers;  the patches I offered have been rejected;  this can be 
  found in
 mercurial mailing list archives.  More examples on request.

 It is interesting. I can understand why trimming does this (most of
 strings used by mercurial are `str` - byte strings), but do not
 understand why they do not have any fixes: this should be as trivial
 as 

Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-15 Fir de Conversatie Christian Brabandt
Hi Markus!

On Mi, 15 Apr 2015, Markus Heidelberg wrote:

 Am Dienstag, 14. April 2015, 20:02:17 schrieb Christian Brabandt:
  Ubuntu 12.04 LTS:
  Mercurial Distributed SCM (version 2.0.2)
  (see http://mercurial.selenic.com for more information)
 
 Huh, pretty old from 2012-01-01 :)

You know, server and so...

   According to `hg annotate` tip~7 was committed at Sat Apr 30 17:43:04 
   2011 +0200.
  
  While hg log -r tip~7 worked, hg rebase complained that tip~7 was no 
  valid revision number (or something like that, sorry, I did not keep the 
  log).
 
 Support for these revision sets like tip~7 had been added to rebase on
 2011-10-15, but only for --source and --base [1].
 A few months later on 2012-05-01 it had been added to the --dest option [2].
 
 [1] http://selenic.com/hg/rev/b12362ab13e7
 [2] http://selenic.com/hg/rev/ae6dddffe4f1
 
 I've adapted the script to use a temporary local tag to store the rebase
 destination and avoid the use of revision sets. Hope it works with your
 version.
 
 diff -r b6c1f5d29ad3 -r 5109f92eb4e5 tools/clean_repo.sh

Thanks. I'll keep that in mind, in case I have to do it again. 
Hopefully, I'll get a more updated hg in the meantime (I didn't know, 
that nowadays, one is so much dependent on a recent mercurial version. I 
mean, 12.04 LTS is not ancient and still a fully supported version...)

Best,
Christian
-- 
Je weniger die Leute glauben, desto abergläubischer werden sie.
-- Jeremias Gotthelf

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-14 Fir de Conversatie Nikolay Pavlov
2015-04-14 20:45 GMT+03:00 Christian Brabandt cbli...@256bit.org:
 Hi Markus!

 On Mo, 13 Apr 2015, Markus Heidelberg wrote:

 [...]
 hg rebase --dest tip~7 --source tip~6 --collapse -mAdd missing tags

 I was brave and tested your script. There are two points I noticed.
 1) rebase needs to be enabled explicitly in your .hg/hgrc
 2) hg rebase does not seem to understand the tip~7 name

It should. Wondering what is your mercurial version. According to `hg
annotate` tip~7 was committed at Sat Apr 30 17:43:04 2011 +0200.

According to the changelog it appeared in mercurial-1.9.


 So I skipped that part, as it seems more trouble than usefulness to make
 this work.

 Best,
 Christian
 --
 Das ist das Teuflischste, was eine menschliche Hand tun kann.
 Darum zahlen wir mit den schrecklichen Dingen, die in der Welt
 geschehen.
 -- Mutter Teresa

 --
 --
 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.
 For more options, visit https://groups.google.com/d/optout.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-14 Fir de Conversatie Nikolay Pavlov
2015-04-14 17:37 GMT+03:00 Roland Eggner ed...@systemanalysen.net:
 On 2015-04-13 Monday at 20:00 +0200 Christian Brabandt wrote:
 On Mo, 13 Apr 2015, Bram Moolenaar wrote:
  Markus Heidelberg wrote:
Some things can perhaps be done on the Mercurial repository before the
import, but I suppose some are only possible in git.  What will happen
for the mirror in Mercurial then?  We need to make sure we don't break
anything.
  
   Yes, makes sense.
   I was not familiar with Mercurial, only knew some commands for basic
   usage, so I had to dig in first to understand the concepts behind it -
   especially the differences in branches, tags and publishing compared to
   Git.
  
   To avoid breaking the HG repo/mirror, cleanup requiring history rewrite
   has to be restricted to the Git repo.
  
   Below the script, it is completely non-interactive:
 
  Thanks for figuring this out.
 
  I have little experience with Mercurial and git (who needs version
  control, I have multi-level persistent undo! :-).   I would need a
  thorough review from a couple of people before running this.

 We could first check it with the bitbucket vim playground repository.
 It's my experimental repository and it contains some extra commits for
 getting the tags right (my script wasn't working correctly, but I think,
 I just fixed it today).

 And if we screw up, I can set it up again ;) (I already said I am going
 to reimport from the google code repository once that one is frozen, so
 it is not much extra effort).


 @Bram, @Markus
 ──
 Many thanks to Markus for the thorough work.   After reading the proposed 
 script
 I am convinced it will work as intended.  It addresses the same odds of the 
 vim
 repository, which I am seeing.  I suggest just one addition:

 When cloned on a Linux system or another Unix-like system, the randomly set
 executability attributes of files in the vim repository are looking odd.  The
 following shell script would turn the picture to a decent and useful look:

 find . -path ./.hg -prune -o -type f -exec chmod 640 '{}' + \\
  find . -path ./.hg -prune -o -type f -regextype posix-extended \\
 -regex '.*(/configure|/mkinstalldirs|\.sh|\.pl)$' -exec chmod -c 750 '{}' + \\
  hg commit -m 'Set reasonable executability attributes of files.'


 @Bram, @Christian, @all
 ───
 During some 10 years of almost daily usage of mercurial I have learned, I can
 usefully apply the philosophy, which Bram has provided in his book „Seven 
 habits
 of effective text editing“:
 •  Usage of a version management system will  _save_  workload rather than to
add workload, as soon as I switch from “insane” to “sane” thinking 
 patterns.
 •  Examples for “insane” thinking patterns are:
How can I undo mercurial commands?
How can I edit the repository?
How can I work on a remote repository?
 •  Examples for “sane” thinking and usage patterns are:
Whenever I am not absolutely sure about the consequences of my next action,
I run “hg clone …” firstly.  On decent file systems this is cheap because
only file names are copied, not file contents.  Dependent on the outcome
I drop the older or the newer repository later -- this way I have no need 
 for
any kind of undo actions and can relax.
Every “hg pull” is followed by a “hg clone” or something equivalent, local
repositories used for pulling are used for nothing else -- this way in the
event of a failed merge or a failed “fast forward” I can just drop the
concerning repository clone and reuse another local clone.
For development as a basic principle I prefer local repositories.  Apart 
 from
rare emergency cases, I use remote repositories for publishing and nothing
else.

 For the currently discussed use case of Christian this means:
 •  I would consider running the script remotely  _only_  in the case of
full-fledged SSH access and after at least one remotely executed “hg 
 clone”.
 •  In any other case and assuming network access without WLAN shortcomings,
I would pull, clone locally at least once, run the script locally, check 
 the
result, if it satisfies then delete the remote repository and recreate it 
 by
pushing (deletion is required in this case because pushing allows only
appending).

 For  _new_  projects I use git rather than mercurial since approximately two
 years.  Some of the reasons are:
 •  git is better documented:  just compare
http://git-htmldocs.googlecode.com/git/git.html
http://mercurial.selenic.com/wiki/ManPages

You need to compare `hg help {command}` and `git help {command}`. `git
help {command}` redirects to `man git-{command}`, `hg help {command}`
uses docstrings and command definitions. They both have a reason to
provide documentation the way they do it:

- Using `man` is simpler and it assumes that software (package manager
mainly) used to install git addons is able to install man pages.
- Using docstrings is more pythonic 

Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-14 Fir de Conversatie Christian Brabandt
On Di, 14 Apr 2015, Nikolay Pavlov wrote:

 2015-04-14 20:45 GMT+03:00 Christian Brabandt cbli...@256bit.org:
  Hi Markus!
 
  On Mo, 13 Apr 2015, Markus Heidelberg wrote:
 
  [...]
  hg rebase --dest tip~7 --source tip~6 --collapse -mAdd missing tags
 
  I was brave and tested your script. There are two points I noticed.
  1) rebase needs to be enabled explicitly in your .hg/hgrc
  2) hg rebase does not seem to understand the tip~7 name
 
 It should. Wondering what is your mercurial version.

Ubuntu 12.04 LTS:
Mercurial Distributed SCM (version 2.0.2)
(see http://mercurial.selenic.com for more information)

Copyright (C) 2005-2011 Matt 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.

 According to `hg annotate` tip~7 was committed at Sat Apr 30 17:43:04 2011 
 +0200.

While hg log -r tip~7 worked, hg rebase complained that tip~7 was no 
valid revision number (or something like that, sorry, I did not keep the 
log).

Best,
Christian
-- 
Nimm dein Leben, wie es ist! Denke nicht: So könnt' es sein. Fluche
keinem deiner Tage, was du tragen mußt, ertrage!
-- Bô Yin Râ (eigentlich: Joseph Anton Schneiderfranken)

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-14 Fir de Conversatie Christian Brabandt
Hi Markus!

On Mo, 13 Apr 2015, Markus Heidelberg wrote:

[...]
 hg rebase --dest tip~7 --source tip~6 --collapse -mAdd missing tags

I was brave and tested your script. There are two points I noticed.
1) rebase needs to be enabled explicitly in your .hg/hgrc
2) hg rebase does not seem to understand the tip~7 name

So I skipped that part, as it seems more trouble than usefulness to make 
this work.

Best,
Christian
-- 
Das ist das Teuflischste, was eine menschliche Hand tun kann.
Darum zahlen wir mit den schrecklichen Dingen, die in der Welt
geschehen.
-- Mutter Teresa

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-14 Fir de Conversatie Christian Brabandt
On Di, 14 Apr 2015, Christian Brabandt wrote:
 On Di, 14 Apr 2015, Nikolay Pavlov wrote:
 
  2015-04-14 20:45 GMT+03:00 Christian Brabandt cbli...@256bit.org:
   Hi Markus!
  
   On Mo, 13 Apr 2015, Markus Heidelberg wrote:
  
   [...]
   hg rebase --dest tip~7 --source tip~6 --collapse -mAdd missing tags
  
   I was brave and tested your script. There are two points I noticed.
   1) rebase needs to be enabled explicitly in your .hg/hgrc
   2) hg rebase does not seem to understand the tip~7 name
  
  It should. Wondering what is your mercurial version.
 
 Ubuntu 12.04 LTS:
 Mercurial Distributed SCM (version 2.0.2)
 (see http://mercurial.selenic.com for more information)
 
 Copyright (C) 2005-2011 Matt 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.
 
  According to `hg annotate` tip~7 was committed at Sat Apr 30 17:43:04 2011 
  +0200.
 
 While hg log -r tip~7 worked, hg rebase complained that tip~7 was no 
 valid revision number (or something like that, sorry, I did not keep the 
 log).

Oh and when I executed it manually using local revision numbers it told 
me No rebase necessary

I think it must be making fun of me...

Best,
Christian
-- 
Denn alles Vornehme ist eigentlich ablehnend.
-- Johann Wolfgang von Goethe (Dichtung und Wahrheit III)

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-14 Fir de Conversatie Roland Eggner
On 2015-04-13 Monday at 20:00 +0200 Christian Brabandt wrote:
 On Mo, 13 Apr 2015, Bram Moolenaar wrote:
  Markus Heidelberg wrote:
Some things can perhaps be done on the Mercurial repository before the
import, but I suppose some are only possible in git.  What will happen
for the mirror in Mercurial then?  We need to make sure we don't break
anything.
   
   Yes, makes sense.
   I was not familiar with Mercurial, only knew some commands for basic
   usage, so I had to dig in first to understand the concepts behind it -
   especially the differences in branches, tags and publishing compared to
   Git.
   
   To avoid breaking the HG repo/mirror, cleanup requiring history rewrite
   has to be restricted to the Git repo.
   
   Below the script, it is completely non-interactive:
  
  Thanks for figuring this out.
  
  I have little experience with Mercurial and git (who needs version
  control, I have multi-level persistent undo! :-).   I would need a
  thorough review from a couple of people before running this.
 
 We could first check it with the bitbucket vim playground repository. 
 It's my experimental repository and it contains some extra commits for 
 getting the tags right (my script wasn't working correctly, but I think, 
 I just fixed it today).
 
 And if we screw up, I can set it up again ;) (I already said I am going 
 to reimport from the google code repository once that one is frozen, so 
 it is not much extra effort).


@Bram, @Markus
──
Many thanks to Markus for the thorough work.   After reading the proposed 
script 
I am convinced it will work as intended.  It addresses the same odds of the vim 
repository, which I am seeing.  I suggest just one addition:

When cloned on a Linux system or another Unix-like system, the randomly set 
executability attributes of files in the vim repository are looking odd.  The 
following shell script would turn the picture to a decent and useful look:

find . -path ./.hg -prune -o -type f -exec chmod 640 '{}' + \\
 find . -path ./.hg -prune -o -type f -regextype posix-extended \\
-regex '.*(/configure|/mkinstalldirs|\.sh|\.pl)$' -exec chmod -c 750 '{}' + \\
 hg commit -m 'Set reasonable executability attributes of files.'


@Bram, @Christian, @all
───
During some 10 years of almost daily usage of mercurial I have learned, I can 
usefully apply the philosophy, which Bram has provided in his book „Seven 
habits 
of effective text editing“:
•  Usage of a version management system will  _save_  workload rather than to 
   add workload, as soon as I switch from “insane” to “sane” thinking patterns.
•  Examples for “insane” thinking patterns are:
   How can I undo mercurial commands?
   How can I edit the repository?
   How can I work on a remote repository?
•  Examples for “sane” thinking and usage patterns are:
   Whenever I am not absolutely sure about the consequences of my next action, 
   I run “hg clone …” firstly.  On decent file systems this is cheap because 
   only file names are copied, not file contents.  Dependent on the outcome 
   I drop the older or the newer repository later -- this way I have no need 
for 
   any kind of undo actions and can relax.
   Every “hg pull” is followed by a “hg clone” or something equivalent, local 
   repositories used for pulling are used for nothing else -- this way in the 
   event of a failed merge or a failed “fast forward” I can just drop the 
   concerning repository clone and reuse another local clone.
   For development as a basic principle I prefer local repositories.  Apart 
from 
   rare emergency cases, I use remote repositories for publishing and nothing 
   else.

For the currently discussed use case of Christian this means:
•  I would consider running the script remotely  _only_  in the case of 
   full-fledged SSH access and after at least one remotely executed “hg clone”.
•  In any other case and assuming network access without WLAN shortcomings, 
   I would pull, clone locally at least once, run the script locally, check the 
   result, if it satisfies then delete the remote repository and recreate it by 
   pushing (deletion is required in this case because pushing allows only 
   appending).

For  _new_  projects I use git rather than mercurial since approximately two 
years.  Some of the reasons are:
•  git is better documented:  just compare
   http://git-htmldocs.googlecode.com/git/git.html
   http://mercurial.selenic.com/wiki/ManPages
•  In my experience git was the very first tool with complete and flawless 
   Unicode support -- even nowadays only few can compete in this concern 
   (perl-5.12+, zsh-5.0+).  This stays in contrast to mercurial:  “hg diff …” 
   occasionally outputs invalid Unicode characters, because trimming of the 
   function name field ignores boundaries of multibyte characters -- this is 
   even noted in the mercurial repository since several years, and there seems 
   to be no intention to fix the bug.  I have discussed 

Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-14 Fir de Conversatie Nikolay Pavlov
2015-04-14 21:02 GMT+03:00 Christian Brabandt cbli...@256bit.org:
 On Di, 14 Apr 2015, Nikolay Pavlov wrote:

 2015-04-14 20:45 GMT+03:00 Christian Brabandt cbli...@256bit.org:
  Hi Markus!
 
  On Mo, 13 Apr 2015, Markus Heidelberg wrote:
 
  [...]
  hg rebase --dest tip~7 --source tip~6 --collapse -mAdd missing tags
 
  I was brave and tested your script. There are two points I noticed.
  1) rebase needs to be enabled explicitly in your .hg/hgrc
  2) hg rebase does not seem to understand the tip~7 name

 It should. Wondering what is your mercurial version.

 Ubuntu 12.04 LTS:
 Mercurial Distributed SCM (version 2.0.2)
 (see http://mercurial.selenic.com for more information)

 Copyright (C) 2005-2011 Matt 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.

 According to `hg annotate` tip~7 was committed at Sat Apr 30 17:43:04 2011 
 +0200.

 While hg log -r tip~7 worked, hg rebase complained that tip~7 was no
 valid revision number (or something like that, sorry, I did not keep the
 log).

Maybe you tried to rebase published revision? This is most common
rebase problem: if some commit is marked as published mercurial will
not allow you to rebase it. You need to use `hg phase` to set phase to
draft or secret then (note: draft revision can only have public or
draft parent, secret can only have public, draft or secret: don’t try
to change phase of *one* revision).

Of course after rebasing mercurial will not allow you to just push
(and in any case push will not remove anything): editing public
history is the worst idea ever in mercurial and when you go down this
road you will find all kinds of obstacles.


 Best,
 Christian
 --
 Nimm dein Leben, wie es ist! Denke nicht: So könnt' es sein. Fluche
 keinem deiner Tage, was du tragen mußt, ertrage!
 -- Bô Yin Râ (eigentlich: Joseph Anton Schneiderfranken)

 --
 --
 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.
 For more options, visit https://groups.google.com/d/optout.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-14 Fir de Conversatie Nikolay Pavlov
2015-04-14 21:36 GMT+03:00 Christian Brabandt cbli...@256bit.org:

 On Di, 14 Apr 2015, Nikolay Pavlov wrote:
 2015-04-14 21:02 GMT+03:00 Christian Brabandt cbli...@256bit.org:
  On Di, 14 Apr 2015, Nikolay Pavlov wrote:
 
  2015-04-14 20:45 GMT+03:00 Christian Brabandt cbli...@256bit.org:
   Hi Markus!
  
   On Mo, 13 Apr 2015, Markus Heidelberg wrote:
  
   [...]
   hg rebase --dest tip~7 --source tip~6 --collapse -mAdd missing tags
  
   I was brave and tested your script. There are two points I noticed.
   1) rebase needs to be enabled explicitly in your .hg/hgrc
   2) hg rebase does not seem to understand the tip~7 name
 
  It should. Wondering what is your mercurial version.
 
  Ubuntu 12.04 LTS:
  Mercurial Distributed SCM (version 2.0.2)
  (see http://mercurial.selenic.com for more information)
 
  Copyright (C) 2005-2011 Matt 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.
 
  According to `hg annotate` tip~7 was committed at Sat Apr 30 17:43:04 
  2011 +0200.
 
  While hg log -r tip~7 worked, hg rebase complained that tip~7 was no
  valid revision number (or something like that, sorry, I did not keep the
  log).

 Maybe you tried to rebase published revision? This is most common
 rebase problem: if some commit is marked as published mercurial will
 not allow you to rebase it. You need to use `hg phase` to set phase to
 draft or secret then (note: draft revision can only have public or
 draft parent, secret can only have public, draft or secret: don’t try
 to change phase of *one* revision).

 No I worked locally and pushed only after I noticed rebase didn't work
 for me.

You don’t need to push to get public revision. It is enough to pull
public revision. I do not see the script fixing phases.


 Best,
 Christian
 --
 Manche halten ihre veränderte Ansicht eines Menschen für eine
 Veränderung desselben.
 -- Jean Paul

 --
 --
 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.
 For more options, visit https://groups.google.com/d/optout.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-14 Fir de Conversatie Nikolay Pavlov
2015-04-14 21:50 GMT+03:00 Nikolay Pavlov zyx@gmail.com:
 2015-04-14 21:36 GMT+03:00 Christian Brabandt cbli...@256bit.org:

 On Di, 14 Apr 2015, Nikolay Pavlov wrote:
 2015-04-14 21:02 GMT+03:00 Christian Brabandt cbli...@256bit.org:
  On Di, 14 Apr 2015, Nikolay Pavlov wrote:
 
  2015-04-14 20:45 GMT+03:00 Christian Brabandt cbli...@256bit.org:
   Hi Markus!
  
   On Mo, 13 Apr 2015, Markus Heidelberg wrote:
  
   [...]
   hg rebase --dest tip~7 --source tip~6 --collapse -mAdd missing tags
  
   I was brave and tested your script. There are two points I noticed.
   1) rebase needs to be enabled explicitly in your .hg/hgrc
   2) hg rebase does not seem to understand the tip~7 name
 
  It should. Wondering what is your mercurial version.
 
  Ubuntu 12.04 LTS:
  Mercurial Distributed SCM (version 2.0.2)
  (see http://mercurial.selenic.com for more information)
 
  Copyright (C) 2005-2011 Matt 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.
 
  According to `hg annotate` tip~7 was committed at Sat Apr 30 17:43:04 
  2011 +0200.
 
  While hg log -r tip~7 worked, hg rebase complained that tip~7 was no
  valid revision number (or something like that, sorry, I did not keep the
  log).

 Maybe you tried to rebase published revision? This is most common
 rebase problem: if some commit is marked as published mercurial will
 not allow you to rebase it. You need to use `hg phase` to set phase to
 draft or secret then (note: draft revision can only have public or
 draft parent, secret can only have public, draft or secret: don’t try
 to change phase of *one* revision).

 No I worked locally and pushed only after I noticed rebase didn't work
 for me.

 You don’t need to push to get public revision. It is enough to pull
 public revision. I do not see the script fixing phases.

Though it should work on draft changesets, so it does not have to.

I guess you need to update mercurial version.



 Best,
 Christian
 --
 Manche halten ihre veränderte Ansicht eines Menschen für eine
 Veränderung desselben.
 -- Jean Paul

 --
 --
 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.
 For more options, visit https://groups.google.com/d/optout.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-14 Fir de Conversatie Markus Heidelberg
Hello Christian and Nikolay

Am Dienstag, 14. April 2015, 20:02:17 schrieb Christian Brabandt:
 On Di, 14 Apr 2015, Nikolay Pavlov wrote:
 
  2015-04-14 20:45 GMT+03:00 Christian Brabandt cbli...@256bit.org:
   Hi Markus!
  
   On Mo, 13 Apr 2015, Markus Heidelberg wrote:
  
   [...]
   hg rebase --dest tip~7 --source tip~6 --collapse -mAdd missing tags
  
   I was brave and tested your script. There are two points I noticed.
   1) rebase needs to be enabled explicitly in your .hg/hgrc

Or in ~/.hgrc
Yes, I forgot to mention it, just for reference:

[extensions]
rebase =

   2) hg rebase does not seem to understand the tip~7 name
  
  It should. Wondering what is your mercurial version.
 
 Ubuntu 12.04 LTS:
 Mercurial Distributed SCM (version 2.0.2)
 (see http://mercurial.selenic.com for more information)

Huh, pretty old from 2012-01-01 :)

  According to `hg annotate` tip~7 was committed at Sat Apr 30 17:43:04 2011 
  +0200.
 
 While hg log -r tip~7 worked, hg rebase complained that tip~7 was no 
 valid revision number (or something like that, sorry, I did not keep the 
 log).

Support for these revision sets like tip~7 had been added to rebase on
2011-10-15, but only for --source and --base [1].
A few months later on 2012-05-01 it had been added to the --dest option [2].

[1] http://selenic.com/hg/rev/b12362ab13e7
[2] http://selenic.com/hg/rev/ae6dddffe4f1

I've adapted the script to use a temporary local tag to store the rebase
destination and avoid the use of revision sets. Hope it works with your
version.

diff -r b6c1f5d29ad3 -r 5109f92eb4e5 tools/clean_repo.sh
--- a/tools/clean_repo.sh   Tue Apr 14 18:58:05 2015 +0200
+++ b/tools/clean_repo.sh   Wed Apr 15 00:59:39 2015 +0200
@@ -80,6 +80,7 @@
 # thing, see
 #   http://mercurial.selenic.com/wiki/Tag
 #   http://mercurial.selenic.com/wiki/TagDesign
+hg tag -f --local rebasedest
 hg tag -f -r 2ec8266fa254f9f90fd302df275d2813ae08a8e6 v7-0-225
 hg tag -f -r 042fa969dab175d414d611425d8a61424bacf75f v7-1-008
 hg tag -f -r 12cecc379574aba2231cbba54c4eaeef3432db69 v7-2-080
@@ -112,13 +113,14 @@
 The others have been moved to the correct changeset.
 EOF
 
-hg rebase --dest tip~19 --source tip~18 --collapse --logfile logfile.txt
+hg rebase --dest rebasedest --source tip~18 --collapse --logfile logfile.txt
 rm logfile.txt
 
 # remove unused tag
 hg tag -mRemove unused tag from invalid line of history --remove start
 
 # add missing tags
+hg tag -f --local rebasedest
 hg tag -r f03c3fae0a99 v7-0-076
 hg tag -r v7-2-000 v7-2
 hg tag -r ee53a39d5896 v7-3
@@ -131,4 +133,7 @@
 
 # Optionally squash all separate tag adding commits into one
 # with a proper description
-hg rebase --dest tip~7 --source tip~6 --collapse -mAdd missing tags 
+hg rebase --dest rebasedest --source tip~6 --collapse -mAdd missing tags
+
+# cleanup
+hg tag --local --remove rebasedest

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-14 Fir de Conversatie Christian Brabandt

On Di, 14 Apr 2015, Nikolay Pavlov wrote:
 2015-04-14 21:02 GMT+03:00 Christian Brabandt cbli...@256bit.org:
  On Di, 14 Apr 2015, Nikolay Pavlov wrote:
 
  2015-04-14 20:45 GMT+03:00 Christian Brabandt cbli...@256bit.org:
   Hi Markus!
  
   On Mo, 13 Apr 2015, Markus Heidelberg wrote:
  
   [...]
   hg rebase --dest tip~7 --source tip~6 --collapse -mAdd missing tags
  
   I was brave and tested your script. There are two points I noticed.
   1) rebase needs to be enabled explicitly in your .hg/hgrc
   2) hg rebase does not seem to understand the tip~7 name
 
  It should. Wondering what is your mercurial version.
 
  Ubuntu 12.04 LTS:
  Mercurial Distributed SCM (version 2.0.2)
  (see http://mercurial.selenic.com for more information)
 
  Copyright (C) 2005-2011 Matt 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.
 
  According to `hg annotate` tip~7 was committed at Sat Apr 30 17:43:04 2011 
  +0200.
 
  While hg log -r tip~7 worked, hg rebase complained that tip~7 was no
  valid revision number (or something like that, sorry, I did not keep the
  log).
 
 Maybe you tried to rebase published revision? This is most common
 rebase problem: if some commit is marked as published mercurial will
 not allow you to rebase it. You need to use `hg phase` to set phase to
 draft or secret then (note: draft revision can only have public or
 draft parent, secret can only have public, draft or secret: don’t try
 to change phase of *one* revision).

No I worked locally and pushed only after I noticed rebase didn't work 
for me.

Best,
Christian
-- 
Manche halten ihre veränderte Ansicht eines Menschen für eine
Veränderung desselben.
-- Jean Paul

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-13 Fir de Conversatie Christian Brabandt
On Mo, 13 Apr 2015, Bram Moolenaar wrote:

 Markus Heidelberg wrote:
  Hello Bram,
  currently I'm pretty busy aside from computer, so it all takes a while.
  But here it is, the first part of cleanup in HG. A Git cleanup process
  will follow after having finished this step.
  
  Am Mittwoch, 1. April 2015, 21:52:41 schrieb Bram Moolenaar:
   
   I generally like cleaning up, but at the same time we should not spend
   time on things nobody will really care about.
  
  For me, a proper project history from developer view is equal to good
  documentation from user view.
  
  So I gladly invest the time for coming up with a cleanup process. I try
  to keep the effort for you to a minimum.
  
   Adding tags to old
   commits is not very useful.  In fact, github already has a problem with
   the number of tags that Vim has.
  
  You don't want to add missing tags because some GitHub tools can't
  handle them properly? :-)
  
  Adding the missing tags makes the repository more complete, they should
  not have been absent in the first place, this just happened by accident.
  Adding  20 tags (now  10 in the cleanup script below) is a drop in the
  ocean of the  3000 existing tags.
  At least the missing minor releases (7.2 7.3) should be added, but I
  don't see a reason for not completing the few other tags.
  
  The huge number of tags are one reason for my suggestion to rethink
  versioning from my previous mail.
  
   Removing empty and useless meta data sounds useful.
   Branches were only used temporarily, I don't think they contain useful
   information.
  
  I checked that they don't contain additional content or information.
  In HG we have to close the branches (see script below), later in Git
  they can be deleted.
  
   I don't think I will want to change the commit messages because some git
   tools can't handle them properly.  AFAIK the message do show up properly
   in most places.
  
  Git wants to structure plain text commit messages into subject and body
  for summary resp. extended description. There has to be some convention
  and Git does it in the simplest possible way by using the first
  line/paragraph as subject for the short log and including the following
  paragraphs for the full log.
  
  So when declaring Git as the official repository, I'd expect it to be
  used as it is intended to and then it would be obvious to follow this
  convention.
  
  This is also not just some Git tool, it is the Git reference
  implementation. The reason other tools (GitHub or GUIs) might not depend
  on the blank line to separate the summary from the full log is just to
  improve visual representation.
  
   Some things can perhaps be done on the Mercurial repository before the
   import, but I suppose some are only possible in git.  What will happen
   for the mirror in Mercurial then?  We need to make sure we don't break
   anything.
  
  Yes, makes sense.
  I was not familiar with Mercurial, only knew some commands for basic
  usage, so I had to dig in first to understand the concepts behind it -
  especially the differences in branches, tags and publishing compared to
  Git.
  
  To avoid breaking the HG repo/mirror, cleanup requiring history rewrite
  has to be restricted to the Git repo.
  
  Below the script, it is completely non-interactive:
 
 Thanks for figuring this out.
 
 I have little experience with Mercurial and git (who needs version
 control, I have multi-level persistent undo! :-).   I would need a
 thorough review from a couple of people before running this.

We could first check it with the bitbucket vim playground repository. 
It's my experimental repository and it contains some extra commits for 
getting the tags right (my script wasn't working correctly, but I think, 
I just fixed it today).

And if we screw up, I can set it up again ;) (I already said I am going 
to reimport from the google code repository once that one is frozen, so 
it is not much extra effort).

Best,
Christian
-- 

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-13 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

 Hello Bram,
 
 currently I'm pretty busy aside from computer, so it all takes a while.
 But here it is, the first part of cleanup in HG. A Git cleanup process
 will follow after having finished this step.
 
 Am Mittwoch, 1. April 2015, 21:52:41 schrieb Bram Moolenaar:
  
  I generally like cleaning up, but at the same time we should not spend
  time on things nobody will really care about.
 
 For me, a proper project history from developer view is equal to good
 documentation from user view.
 
 So I gladly invest the time for coming up with a cleanup process. I try
 to keep the effort for you to a minimum.
 
  Adding tags to old
  commits is not very useful.  In fact, github already has a problem with
  the number of tags that Vim has.
 
 You don't want to add missing tags because some GitHub tools can't
 handle them properly? :-)
 
 Adding the missing tags makes the repository more complete, they should
 not have been absent in the first place, this just happened by accident.
 Adding  20 tags (now  10 in the cleanup script below) is a drop in the
 ocean of the  3000 existing tags.
 At least the missing minor releases (7.2 7.3) should be added, but I
 don't see a reason for not completing the few other tags.
 
 The huge number of tags are one reason for my suggestion to rethink
 versioning from my previous mail.
 
  Removing empty and useless meta data sounds useful.
  Branches were only used temporarily, I don't think they contain useful
  information.
 
 I checked that they don't contain additional content or information.
 In HG we have to close the branches (see script below), later in Git
 they can be deleted.
 
  I don't think I will want to change the commit messages because some git
  tools can't handle them properly.  AFAIK the message do show up properly
  in most places.
 
 Git wants to structure plain text commit messages into subject and body
 for summary resp. extended description. There has to be some convention
 and Git does it in the simplest possible way by using the first
 line/paragraph as subject for the short log and including the following
 paragraphs for the full log.
 
 So when declaring Git as the official repository, I'd expect it to be
 used as it is intended to and then it would be obvious to follow this
 convention.
 
 This is also not just some Git tool, it is the Git reference
 implementation. The reason other tools (GitHub or GUIs) might not depend
 on the blank line to separate the summary from the full log is just to
 improve visual representation.
 
  Some things can perhaps be done on the Mercurial repository before the
  import, but I suppose some are only possible in git.  What will happen
  for the mirror in Mercurial then?  We need to make sure we don't break
  anything.
 
 Yes, makes sense.
 I was not familiar with Mercurial, only knew some commands for basic
 usage, so I had to dig in first to understand the concepts behind it -
 especially the differences in branches, tags and publishing compared to
 Git.
 
 To avoid breaking the HG repo/mirror, cleanup requiring history rewrite
 has to be restricted to the Git repo.
 
 Below the script, it is completely non-interactive:

Thanks for figuring this out.

I have little experience with Mercurial and git (who needs version
control, I have multi-level persistent undo! :-).   I would need a
thorough review from a couple of people before running this.


-- 
Wi n0t trei a h0liday in Sweden thi yer?
 Monty Python and the Holy Grail PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-13 Fir de Conversatie Markus Heidelberg
Hello Bram,

currently I'm pretty busy aside from computer, so it all takes a while.
But here it is, the first part of cleanup in HG. A Git cleanup process
will follow after having finished this step.

Am Mittwoch, 1. April 2015, 21:52:41 schrieb Bram Moolenaar:
 
 I generally like cleaning up, but at the same time we should not spend
 time on things nobody will really care about.

For me, a proper project history from developer view is equal to good
documentation from user view.

So I gladly invest the time for coming up with a cleanup process. I try
to keep the effort for you to a minimum.

 Adding tags to old
 commits is not very useful.  In fact, github already has a problem with
 the number of tags that Vim has.

You don't want to add missing tags because some GitHub tools can't
handle them properly? :-)

Adding the missing tags makes the repository more complete, they should
not have been absent in the first place, this just happened by accident.
Adding  20 tags (now  10 in the cleanup script below) is a drop in the
ocean of the  3000 existing tags.
At least the missing minor releases (7.2 7.3) should be added, but I
don't see a reason for not completing the few other tags.

The huge number of tags are one reason for my suggestion to rethink
versioning from my previous mail.

 Removing empty and useless meta data sounds useful.
 Branches were only used temporarily, I don't think they contain useful
 information.

I checked that they don't contain additional content or information.
In HG we have to close the branches (see script below), later in Git
they can be deleted.

 I don't think I will want to change the commit messages because some git
 tools can't handle them properly.  AFAIK the message do show up properly
 in most places.

Git wants to structure plain text commit messages into subject and body
for summary resp. extended description. There has to be some convention
and Git does it in the simplest possible way by using the first
line/paragraph as subject for the short log and including the following
paragraphs for the full log.

So when declaring Git as the official repository, I'd expect it to be
used as it is intended to and then it would be obvious to follow this
convention.

This is also not just some Git tool, it is the Git reference
implementation. The reason other tools (GitHub or GUIs) might not depend
on the blank line to separate the summary from the full log is just to
improve visual representation.

 Some things can perhaps be done on the Mercurial repository before the
 import, but I suppose some are only possible in git.  What will happen
 for the mirror in Mercurial then?  We need to make sure we don't break
 anything.

Yes, makes sense.
I was not familiar with Mercurial, only knew some commands for basic
usage, so I had to dig in first to understand the concepts behind it -
especially the differences in branches, tags and publishing compared to
Git.

To avoid breaking the HG repo/mirror, cleanup requiring history rewrite
has to be restricted to the Git repo.

Below the script, it is completely non-interactive:

#!/bin/sh

# Vim HG repository cleanup

# close stale branches, switch back to default branch afterwards
# This has the slightly bad visual side-effect of parallel development from the
# previous branch head up to the corresponding closing commit in hg log
# --graph, but is the correct thing to do to avoid seemingly active branches
# showing up in hg branches output.
hg update -C vim
hg commit --close-branch -mClose invalid branch 'vim'
hg update -C vim72
hg commit --close-branch -mClose unused branch 'vim72'
hg update -C vim73
hg commit --close-branch -mClose old branch 'vim73'
hg update -C default

# remove unused branch lines
# However, since the network protocol works append-only, you cannot push it
# to the public repo. This would have to be done directly on the server via SSH
# or an admin interface.
# And still this change would have no effect when pulling from existing
# clones, it would have to be stripped there as well, so ignore this step.
#hg strip vim
#hg strip vim72

# find potentially wrong tags by checking whether the patch number had been
# added to src/version.c in that changeset
#for i in $(hg tags | grep -o v7-.*-[^ ]*); do hg diff -c $i src/version.c | 
grep -q ^+$(echo $i | sed -e 's/v7-.*-0*//'), || echo $i; done
# result:
# v7-4-415
# v7-4b-000
# v7-3-523
# v7-3-143
# v7-2-446
# v7-2-443
# v7-2-442
# v7-2-441
# v7-2-440
# v7-2-439
# v7-2-438
# v7-2-437
# v7-2-436
# v7-2-232
# v7-2-176
# v7-2-167fix
# v7-2-168
# v7-2-082
# v7-2-080
# v7-2-000
# v7-2c-000
# v7-2b-000
# v7-2a-00
# v7-1-258
# v7-1-008
# v7-0-225

# determine the actually wrong tags after manual inspection
# v7-4-415
# v7-2-446
# v7-2-443
# v7-2-442
# v7-2-441
# v7-2-440
# v7-2-439
# v7-2-438
# v7-2-437
# v7-2-436
# v7-2-232
# v7-2-176
# v7-2-167fix
# v7-2-168
# v7-2-082
# v7-2-080
# v7-1-008
# v7-0-225

# fix the wrong tags
# Do not edit the .hgtags file manually, but rely on hg 

Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-02 Fir de Conversatie Christian Brabandt
Hi Bram!

On Mi, 01 Apr 2015, Bram Moolenaar wrote:

 What will happen for the mirror in Mercurial then?

If you mean the bitbucket mirror I have set up, I wouldn't be too 
concerned.

First of all, it is currently in experimental state, until I figure out 
the complete workflow for git and how I can get the update better 
automatically. Currently the patches should be synced fairly automatic, 
but I don't know yet how to handle the tags yet.

Secondly, depending on how much is fixed, I don't intend to fix the 
history there, until someone can give me some advise on how to do it in 
mercurial. (Theoretically, I could reimport the complete history from 
git, after it has been cleaned there, but I do want to save me that 
effort).

Best,
Christian
-- 
Wer mit seinem Latein am Ende ist, sollte eine andere Sprache lernen!

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-01 Fir de Conversatie Roland Eggner
High Markus!


On 2015-04-01 Wednesday at 08:50 +0300 LCD 47 wrote:
 On 1 April 2015, Markus Heidelberg markus.heidelb...@web.de wrote:
  if switching to Git, we could seriously consider cleaning up the
  repository, now it might be the last chance for quite a while.
 
  I have collected some possibilities for improvement - some simple,
  some a bit more complicated, but if found the proper commands/scripts,
  the automated tasks should work without much hassle.
 [...]
 This is a very well thought-out list, +1.

+1

Until now in the vim project mercurial is used just for deployment of vim 
versions.  The many possibilities to save workload are  _not yet_  used.  
Instead, a significant effort is made to separate the runtime part -- I fail to 
see any benefit of this separation, I see only troubles and additional workload 
caused by this separation:  patches split over multiple commits, patches not 
sufficient for building vim.

Thank you Markus!  Based on your work, after a well thought  _one-time_  
effort, 
we can use git as a tool, which  _saves_  workload for Bram and everybody else 
involved, rather than to add workload.

Most interesting:  Bram gets the option to automate  _completely_  the 
management of the todo list by usage of git.  The todo list can become 
autogenerated by git, initially in part, and some day completely:
•  Another git branch can correspond to every entry in the todolist, just 
   a useful scheme for the names of this “todo” and “work in progress” branches 
   is needed.  If Bram prefers mails or pull requests for submitting of patches 
   does not matter, both ways are possible, the latter probably with less 
   workload for him:  he could use just “git pull” or “git am”.  And if the 
   commit author field needs adjustment because the full name of the author is 
   missing in the mail From: header, there is “git commit --amend”.  git itself 
   and many other small and large software projects are managed with such 
   a workflow -- probably with good reasons.
•  This way git can tie together reliably the names of the original patch 
author 
   and other contributors, multiple versions of patches, the changeset the 
   patches are based on, and an arbitrary number of comments (a git commit can 
   contain a message without a patch).  Todo list entries can get a unique 
   identity -- no need any more to search them in mailboxes, no more erroneous 
   assignments of patches.  Other contributors can test patches easier.
•  When Bram decides to include a patch in the master branch, he just merges 
the 
   regarding branch, solves merge conflicts sometimes, runs “make test“ 
   sometimes, and adds his improvements and final polish.  This last step is 
   important for the success of vim and could become more visible (optionally 
   separate commits), we could learn more easily from Brams expertise.

I imagine, this can save so much workload for Bram, that the todo list can 
start 
to shrink, rather than to grow for ever .. an exciting vision  :)


-- 
Roland Eggner

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


pgpEhIGbhzPrb.pgp
Description: PGP signature


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-01 Fir de Conversatie Ben Fritz
I'm not sure why everyone seems to think the Vim development process is going 
to change drastically just because Bram is moving Vim to Github. A lot of that 
stuff you're daydreaming about is also possible with Mercurial, and Bram has 
resisted significant changes there for a long time. Although I cannot speak for 
Bram, if that's the reason you're all so gleeful about the move then I think 
you're going to be even more disappointed than those of us wishing he'd just 
stick with Hg.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-01 Fir de Conversatie Christian Brabandt
Hi Ben!

On Mi, 01 Apr 2015, Ben Fritz wrote:

 I'm not sure why everyone seems to think the Vim development process
 is going to change drastically just because Bram is moving Vim to
 Github. A lot of that stuff you're daydreaming about is also possible
 with Mercurial, and Bram has resisted significant changes there for a
 long time. Although I cannot speak for Bram, if that's the reason
 you're all so gleeful about the move then I think you're going to be
 even more disappointed than those of us wishing he'd just stick with
 Hg.
 

Well, depending on what will we or Bram can agree on, it's not 
necessarily about cleaning up some repository metadata, so that working 
with it, will be easier. (Look at the ugly commit messages from the git 
log output) That might as well include a change in the commit workflow, 
but only if Bram agrees that there is a problem, that he would like to 
see fixed as well.

And I would certainly like to see some of the points mentioned by Markus 
addressed. I also appreciate the suggestion to create a script, that can 
do this cleanup mostly automatic. That could be run against the snapshot 
repository@github so that we can see, that it works and what the results 
would look like. (I don't feel competent enough to do that myself)

Best,
Christian
-- 
Stell Dir vor, es ist Krieg und der Fernseher ist kaputt.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Preparations for moving to github

2015-04-01 Fir de Conversatie Charles Campbell
Ben Fritz wrote:
 On Friday, March 27, 2015 at 4:06:47 PM UTC-5, Bruno Sutic wrote:
 - lastly, it has been mentioned a couple times vim plugin community is
 already on github. The objective statement that proves this: github
 currently has 42,636 vim related repositories, bitbucket has only 1652
 (this is based on a simple search for vim on both github and
 bitbucket).
 Does this simple search include the automatically created mirrors that
 Vundle created for each and every vim.org plugin? Authors that have no
 presence on Github whatsoever nevertheless have their plugin on github
 due to this.

I don't think I'm in the curmudgeon group or in the excited group.

* I use the ftp site.  Will that continue? (mostly because I have
scripts that download and compile everything)  (ex.  upd 670-685  will
update vim with the given range of patches).
* I occasionally use mercurial to get the latest runtime.
* I'm pretty sure that a number of my plugins have been made available
via git; I had nothing to do with that.  So the simple search would
definitely be skewed as I see it.

Regards,
Chip Campbell

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-01 Fir de Conversatie Bram Moolenaar

Markus Heidelberg wrote:

 if switching to Git, we could seriously consider cleaning up the
 repository, now it might be the last chance for quite a while.
 
 I have collected some possibilities for improvement - some simple, some
 a bit more complicated, but if found the proper commands/scripts, the
 automated tasks should work without much hassle.

[...]

I generally like cleaning up, but at the same time we should not spend
time on things nobody will really care about.  Adding tags to old
commits is not very useful.  In fact, github already has a problem with
the number of tags that Vim has.

Removing empty and useless meta data sounds useful.
Branches were only used temporarily, I don't think they contain useful
information.

I don't think I will want to change the commit messages because some git
tools can't handle them properly.  AFAIK the message do show up properly
in most places.

Some things can perhaps be done on the Mercurial repository before the
import, but I suppose some are only possible in git.  What will happen
for the mirror in Mercurial then?  We need to make sure we don't break
anything.


-- 
There are only two hard things in programming: Cache invalidation,
naming things and off-by-one errors.

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


Re: Repository cleanup (Was: Preparations for moving to github)

2015-04-01 Fir de Conversatie Nikolay Pavlov
2015-04-01 22:52 GMT+03:00 Bram Moolenaar b...@moolenaar.net:

 Markus Heidelberg wrote:

 if switching to Git, we could seriously consider cleaning up the
 repository, now it might be the last chance for quite a while.

 I have collected some possibilities for improvement - some simple, some
 a bit more complicated, but if found the proper commands/scripts, the
 automated tasks should work without much hassle.

 [...]

 I generally like cleaning up, but at the same time we should not spend
 time on things nobody will really care about.  Adding tags to old
 commits is not very useful.  In fact, github already has a problem with
 the number of tags that Vim has.

 Removing empty and useless meta data sounds useful.
 Branches were only used temporarily, I don't think they contain useful
 information.

 I don't think I will want to change the commit messages because some git
 tools can't handle them properly.  AFAIK the message do show up properly
 in most places.

Commit messages were not handled properly even with mercurial, though
there were less cases when it shows summary.

In mercurial these were `hg histedit` and `hg log` without additional
options. Git has a bit more AFAIR. *And* you definitely have problems
with current commit messages on GH: GH expects all messages follow

Summary

Extended description
…
…

convention (thus you need to tap `…` to determine WTF does “updated
for version” summary actually mean), bitbucket also (it even does not
allow expanding)… Well, even look at
https://code.google.com/p/vim/source/list. What you see here is

(black) Added tag …
(black) updated for version … (gray) Problem: …

(note: most useless information is highlighted with black).

Oneline summary at the top is the expected convention used by every
site and every used VCS out there. Current commit format is completely
wrong then: “updated for version 7.4.684” is a “super useful” summary
given that you can already deduce this line from the attached tag
name.


 Some things can perhaps be done on the Mercurial repository before the
 import, but I suppose some are only possible in git.  What will happen
 for the mirror in Mercurial then?  We need to make sure we don't break
 anything.


 --
 There are only two hard things in programming: Cache invalidation,
 naming things and off-by-one errors.

  /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
 ///sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
 \\\  an exciting new programming language -- http://www.Zimbu.org///
  \\\help me help AIDS victims -- http://ICCF-Holland.org///

 --
 --
 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.
 For more options, visit https://groups.google.com/d/optout.

-- 
-- 
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.
For more options, visit https://groups.google.com/d/optout.


  1   2   >