Hi,
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.
* Remove the three branches, they are unneeded and inconsistent. No
content will be lost by these actions.
- 'vim73' points to the 7.3 release, create the missing tag v7-3 instead
(similar to the already existing v7-0 v7-1 v7-4)
- 'vim72' points to 7.2.446
- 'vim' only contains the file README.txt, also remove the tag 'start' then
* Add missing tags
v7-0003
v7-0004
v7-0005
v7-0006
v7-0013
v7-0014
v7-0190
v7-0215
=> But the versions vefore 7.0 are strange anyway with many commits
with equal message.
v7-0-076
v7-1-083
v7-2
v7-2-054
v7-3-001
v7-3-139
v7-3-140
v7-3-141
v7-4-679
* Fix wrong tags.
- Remove the "fix" suffix, the source state in this commit fits to the
7.2.167 patch:
v7-2-167fix
- Move to the correct commit:
v7-0-225
v7-2-080
v7-2-082
v7-2-168
v7-2-176
v7-2-232
These tags were applied to the 7.3 branch instead of the 7.2 line.
v7-2-433 is the last tag before 7.3 adaptions:
v7-2-436
v7-2-437
v7-2-438
v7-2-439
v7-2-440
v7-2-441
v7-2-442
v7-2-443
v7-2-446
* Only keep 1 history root:
This command shows there are 3 roots:
$ git log --max-parents=0 --oneline
137d25c Correct Japanese menus to avoid error while loading them after
7.2.432.
7d32e70 First step in the Vim 7.3 branch. Changed version numbers.
a25c048 Initial revision
"Initial revision" is the correct root.
This command shows two merge commits. There the branches with own root
are merged into the main branch:
$ git log --merges --oneline
eb4b96f Fold Vim 7.2 default branch back to trunk to avoid two heads. (Tony
Mechelynck)
f97f3c9 Merged change from default branch: Correct Japanese menus.
The trees of commits f97f3c9 and v7-2-434~2 are identical.
-> The merge commit f97f3c9 for the Japanese menu corrections could be
changed to an ordinary commit, getting rid of one false root commit
137d25c.
-> The false root commit 7d32e70, which starts the 7.2 branch, could
be avoided by branching off from commit 6fcc06c (Updated runtime
files.), which is the direct descendant of v7-2-433.
* Remove empty commits:
For each HG tag ("Added tag ... for changeset ...", adding to the
.hgtags file) there is an empty and useless commit in the git repo.
For the following actions, Bram would have to slightly adapt his
scripts/configuration to continue using the new style.
Some snippets of the update script of my old git mirror may help:
http://repo.or.cz/w/vim_mainline.git/blob/refs/heads/stuff:/update-vim.sh
* Rename tags to match the normal version notation:
s/-/./g
e.g. v7-4-683 -> v7.4.683
* Unify name and mail for author and commiter, see:
$ git shortlog --email -s
These should all be the same person for the current history.
* Replace tabs in commit messages to make "git log" indent properly.
Example with bad indentation:
updated for version 7.4.682
Problem: The search highlighting and match highlighting replaces the
cursorline highlighting, this doesn't look good.
Solution: Combine the highlighting. (Yasuhiro Matsumoto)
* 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.
* 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.
Some suggestions for development beyond:
* Apply authorship information to the commit metadata.
* Rethink versioning
Currently every commit (patch) is being tagged, but these are no releases.
If interested in this cleanup, I and maybe others could assemble the
needed git and shell commands. Some of these tasks I consider as quite
obligatory.
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 [email protected].
For more options, visit https://groups.google.com/d/optout.