* Switching to git?
@ 2007-12-06 17:45 Pavel Roskin
2007-12-06 18:04 ` Otavio Salvador
` (2 more replies)
0 siblings, 3 replies; 41+ messages in thread
From: Pavel Roskin @ 2007-12-06 17:45 UTC (permalink / raw)
To: The development of GRUB 2
Hello!
This is a reaction to the "BTS overhaul" post, I just don't want to
hijack the thread with a separate topic.
If someone asked me what is the project that is not using git but would
benefit from it most, I would say it's GRUB.
First and foremost, git (together with StGIT and other tools) relieves
the pressure to commit. CVS and Subversion allow to work with only one
patch at a time. I can have only one patch applied to the working
directory if I want to commit one of the patches safely. There is no
support for refining series of patches. StGIT exists precisely for
that, and even bare git is getting better at that.
Another closely related advantage is that git allows parallel
development. Branching is built in from the beginning. There are
unofficial forks of GRUB 1 already (such as grub4dos). git would help
turn forks into branches, bring them under one roof and eventually allow
merging all useful features together.
Not to be overlooked it the git-bisect command. No amount of code
review can prevent bugs, especially for software that interacts with
"black box" firmware and hardware. Having an effective mechanism for
bug isolation is essential.
Tools for viewing history of the git repository, such as qgit, gitk and
tig have no equivalents for CVS. And the tools for mailing series of
patches are great time savers. git is actively developed and has a
vibrant community. Yet it's well past the point where major
incompatibilities are routinely introduced.
Other GNU projects have switched to git. Savannah supports git. The
list of the GNU projects using git is pretty impressive:
http://git.sv.gnu.org/gitweb/
I think GNU GRUB would be a welcome addition.
--
Regards,
Pavel Roskin
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-06 17:45 Switching to git? Pavel Roskin
@ 2007-12-06 18:04 ` Otavio Salvador
2007-12-07 1:42 ` willem
2007-12-12 14:30 ` Robert Millan
2007-12-15 10:54 ` Robert Millan
2 siblings, 1 reply; 41+ messages in thread
From: Otavio Salvador @ 2007-12-06 18:04 UTC (permalink / raw)
To: The development of GRUB 2
Pavel Roskin <proski@gnu.org> writes:
> Other GNU projects have switched to git. Savannah supports git. The
> list of the GNU projects using git is pretty impressive:
> http://git.sv.gnu.org/gitweb/
>
> I think GNU GRUB would be a welcome addition.
+1. I brought this up to discussion some time ago here but hadn't much
feedback. I hope we can move forward this time :-D
--
O T A V I O S A L V A D O R
---------------------------------------------
E-mail: otavio@debian.org UIN: 5906116
GNU/Linux User: 239058 GPG ID: 49A5F855
Home Page: http://otavio.ossystems.com.br
---------------------------------------------
"Microsoft sells you Windows ... Linux gives
you the whole house."
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-06 18:04 ` Otavio Salvador
@ 2007-12-07 1:42 ` willem
2007-12-07 11:43 ` Otavio Salvador
2007-12-08 0:06 ` Vesa Jääskeläinen
0 siblings, 2 replies; 41+ messages in thread
From: willem @ 2007-12-07 1:42 UTC (permalink / raw)
To: The development of GRUB 2
Otavio Salvador wrote:
> Pavel Roskin <proski@gnu.org> writes:
>
>
>> Other GNU projects have switched to git. Savannah supports git. The
>> list of the GNU projects using git is pretty impressive:
>> http://git.sv.gnu.org/gitweb/
>>
>> I think GNU GRUB would be a welcome addition.
>>
>
> +1. I brought this up to discussion some time ago here but hadn't much
> feedback. I hope we can move forward this time :-D
>
>
I did look at git.
I agree , git is better than svn.
regards
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-07 1:42 ` willem
@ 2007-12-07 11:43 ` Otavio Salvador
2007-12-08 5:39 ` willem
2007-12-08 0:06 ` Vesa Jääskeläinen
1 sibling, 1 reply; 41+ messages in thread
From: Otavio Salvador @ 2007-12-07 11:43 UTC (permalink / raw)
To: The development of GRUB 2
willem <wli222@casema.nl> writes:
> Otavio Salvador wrote:
>> Pavel Roskin <proski@gnu.org> writes:
>>
>>
>>> Other GNU projects have switched to git. Savannah supports git. The
>>> list of the GNU projects using git is pretty impressive:
>>> http://git.sv.gnu.org/gitweb/
>>>
>>> I think GNU GRUB would be a welcome addition.
>>>
>>
>> +1. I brought this up to discussion some time ago here but hadn't much
>> feedback. I hope we can move forward this time :-D
>>
>>
> I did look at git.
> I agree , git is better than svn.
It's much better and makes the integration work much easier to the
team too.
People can start to provide GIT trees, instead of patches, for review
and once it has been accepted, and paper work done, a single git merge
does the magic :-)
--
O T A V I O S A L V A D O R
---------------------------------------------
E-mail: otavio@debian.org UIN: 5906116
GNU/Linux User: 239058 GPG ID: 49A5F855
Home Page: http://otavio.ossystems.com.br
---------------------------------------------
"Microsoft sells you Windows ... Linux gives
you the whole house."
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-07 1:42 ` willem
2007-12-07 11:43 ` Otavio Salvador
@ 2007-12-08 0:06 ` Vesa Jääskeläinen
2007-12-08 1:16 ` Otavio Salvador
1 sibling, 1 reply; 41+ messages in thread
From: Vesa Jääskeläinen @ 2007-12-08 0:06 UTC (permalink / raw)
To: The development of GRUB 2
willem wrote:
> Otavio Salvador wrote:
>> Pavel Roskin <proski@gnu.org> writes:
>>> Other GNU projects have switched to git. Savannah supports git. The
>>> list of the GNU projects using git is pretty impressive:
>>> http://git.sv.gnu.org/gitweb/
>>>
>>> I think GNU GRUB would be a welcome addition.
>>
>> +1. I brought this up to discussion some time ago here but hadn't much
>> feedback. I hope we can move forward this time :-D
>>
> I did look at git.
> I agree , git is better than svn.
Git indeed has some nice features, but why I would hesitate its usage is
that it does not integrate well with some IDE's like Eclipse. I know
there has been some plugin (dead now?), but that is not ready for
mainstream use. Where as CVS and SVN works nicely. If I am not mistaken,
git is quite platform dependant... at least last time I looked at it, it
was coded like it.
That being said... I am not too strongly against switching to it.
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-08 0:06 ` Vesa Jääskeläinen
@ 2007-12-08 1:16 ` Otavio Salvador
2007-12-08 2:54 ` Pavel Roskin
0 siblings, 1 reply; 41+ messages in thread
From: Otavio Salvador @ 2007-12-08 1:16 UTC (permalink / raw)
To: The development of GRUB 2
Vesa Jääskeläinen <chaac@nic.fi> writes:
> willem wrote:
>> Otavio Salvador wrote:
>>> Pavel Roskin <proski@gnu.org> writes:
>>>> Other GNU projects have switched to git. Savannah supports git. The
>>>> list of the GNU projects using git is pretty impressive:
>>>> http://git.sv.gnu.org/gitweb/
>>>>
>>>> I think GNU GRUB would be a welcome addition.
>>>
>>> +1. I brought this up to discussion some time ago here but hadn't much
>>> feedback. I hope we can move forward this time :-D
>>>
>> I did look at git.
>> I agree , git is better than svn.
>
> Git indeed has some nice features, but why I would hesitate its usage is
> that it does not integrate well with some IDE's like Eclipse. I know
> there has been some plugin (dead now?), but that is not ready for
> mainstream use. Where as CVS and SVN works nicely. If I am not mistaken,
> git is quite platform dependant... at least last time I looked at it, it
> was coded like it.
>
> That being said... I am not too strongly against switching to it.
That's why GIT has git-cvsserver so you can use plain CVS tools to
commit in a GIT repository. ;-)
--
O T A V I O S A L V A D O R
---------------------------------------------
E-mail: otavio@debian.org UIN: 5906116
GNU/Linux User: 239058 GPG ID: 49A5F855
Home Page: http://otavio.ossystems.com.br
---------------------------------------------
"Microsoft sells you Windows ... Linux gives
you the whole house."
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-08 1:16 ` Otavio Salvador
@ 2007-12-08 2:54 ` Pavel Roskin
0 siblings, 0 replies; 41+ messages in thread
From: Pavel Roskin @ 2007-12-08 2:54 UTC (permalink / raw)
To: The development of GRUB 2
Hello!
On Fri, 2007-12-07 at 23:16 -0200, Otavio Salvador wrote:
> Vesa Jääskeläinen <chaac@nic.fi> writes:
> > Git indeed has some nice features, but why I would hesitate its usage is
> > that it does not integrate well with some IDE's like Eclipse. I know
> > there has been some plugin (dead now?), but that is not ready for
> > mainstream use.
If you mean egit, it doesn't look dead to me with the last commit two
weeks ago and the last release two months ago:
http://repo.or.cz/w/egit.git
I'm not sure about the mainstream use, but projects in useless state
don't normally make releases.
> > Where as CVS and SVN works nicely. If I am not mistaken,
> > git is quite platform dependant... at least last time I looked at it, it
> > was coded like it.
Things are much better now, as far as I can tell.
> > That being said... I am not too strongly against switching to it.
>
> That's why GIT has git-cvsserver so you can use plain CVS tools to
> commit in a GIT repository. ;-)
Yes, that may work too. The git-cvsserver even mentions the Eclipse
plugin. But perhaps we shouldn't enable git-cvsserver support in the
main repository. It would be useful on local branches that get reviewed
before merging.
--
Regards,
Pavel Roskin
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-07 11:43 ` Otavio Salvador
@ 2007-12-08 5:39 ` willem
0 siblings, 0 replies; 41+ messages in thread
From: willem @ 2007-12-08 5:39 UTC (permalink / raw)
To: The development of GRUB 2
Otavio Salvador wrote:
> willem <wli222@casema.nl> writes:
>
>
>> Otavio Salvador wrote:
>>
>>> Pavel Roskin <proski@gnu.org> writes:
>>>
>>>
>>>
>>>> Other GNU projects have switched to git. Savannah supports git. The
>>>> list of the GNU projects using git is pretty impressive:
>>>> http://git.sv.gnu.org/gitweb/
>>>>
>>>> I think GNU GRUB would be a welcome addition.
>>>>
>>>>
>>> +1. I brought this up to discussion some time ago here but hadn't much
>>> feedback. I hope we can move forward this time :-D
>>>
>>>
>>>
>> I did look at git.
>> I agree , git is better than svn.
>>
>
> It's much better and makes the integration work much easier to the
> team too.
>
> People can start to provide GIT trees, instead of patches, for review
> and once it has been accepted, and paper work done, a single git merge
> does the magic :-)
>
>
OOH you are very clever :-)
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-06 17:45 Switching to git? Pavel Roskin
2007-12-06 18:04 ` Otavio Salvador
@ 2007-12-12 14:30 ` Robert Millan
2007-12-12 15:03 ` Otavio Salvador
2007-12-12 15:36 ` Pavel Roskin
2007-12-15 10:54 ` Robert Millan
2 siblings, 2 replies; 41+ messages in thread
From: Robert Millan @ 2007-12-12 14:30 UTC (permalink / raw)
To: The development of GRUB 2
On Thu, Dec 06, 2007 at 12:45:48PM -0500, Pavel Roskin wrote:
>
> Other GNU projects have switched to git. Savannah supports git. The
> list of the GNU projects using git is pretty impressive:
> http://git.sv.gnu.org/gitweb/
Savannah support was the main concern raised by Okuji last time a proposal
to switch away from CVS was brought up. It's good that this is solved.
I myself have no objection. I'd prefer svn, but that's not supported by
Savannah yet, and anything is better than CVS IMO. In the event that we
decide to migrate to svn in the future, though, is there an easy path
from git to svn?
--
Robert Millan
<GPLv2> I know my rights; I want my phone call!
<DRM> What use is a phone call, if you are unable to speak?
(as seen on /.)
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-12 14:30 ` Robert Millan
@ 2007-12-12 15:03 ` Otavio Salvador
2007-12-12 16:21 ` Amin Azez
2007-12-12 15:36 ` Pavel Roskin
1 sibling, 1 reply; 41+ messages in thread
From: Otavio Salvador @ 2007-12-12 15:03 UTC (permalink / raw)
To: The development of GRUB 2
Robert Millan <rmh@aybabtu.com> writes:
> I myself have no objection. I'd prefer svn, but that's not supported by
> Savannah yet, and anything is better than CVS IMO. In the event that we
> decide to migrate to svn in the future, though, is there an easy path
> from git to svn?
I doubt that you'll want to come back to SVN after you get used to
GIT.
I thought it was going to be hard to learn but it was really easy and
there's a lot of documentation about it available.
--
O T A V I O S A L V A D O R
---------------------------------------------
E-mail: otavio@debian.org UIN: 5906116
GNU/Linux User: 239058 GPG ID: 49A5F855
Home Page: http://otavio.ossystems.com.br
---------------------------------------------
"Microsoft sells you Windows ... Linux gives
you the whole house."
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-12 14:30 ` Robert Millan
2007-12-12 15:03 ` Otavio Salvador
@ 2007-12-12 15:36 ` Pavel Roskin
2007-12-12 16:01 ` Robert Millan
1 sibling, 1 reply; 41+ messages in thread
From: Pavel Roskin @ 2007-12-12 15:36 UTC (permalink / raw)
To: The development of GRUB 2, Robert Millan
Quoting Robert Millan <rmh@aybabtu.com>:
> I myself have no objection. I'd prefer svn, but that's not supported by
> Savannah yet, and anything is better than CVS IMO. In the event that we
> decide to migrate to svn in the future, though, is there an easy path
> from git to svn?
I believe git-svn (included with git) should be able to do it. I'm
quite sure it would work fine for linear history, but things may be
trickier if branches are used.
However, I think nobody would want to go from git to svn. Alone the
ability to work on more than one patch at once is like getting an
extra dimension, something that very few would want to give up.
--
Regards,
Pavel Roskin
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-12 15:36 ` Pavel Roskin
@ 2007-12-12 16:01 ` Robert Millan
0 siblings, 0 replies; 41+ messages in thread
From: Robert Millan @ 2007-12-12 16:01 UTC (permalink / raw)
To: Pavel Roskin; +Cc: The development of GRUB 2
On Wed, Dec 12, 2007 at 10:36:17AM -0500, Pavel Roskin wrote:
> Quoting Robert Millan <rmh@aybabtu.com>:
>
> >I myself have no objection. I'd prefer svn, but that's not supported by
> >Savannah yet, and anything is better than CVS IMO. In the event that we
> >decide to migrate to svn in the future, though, is there an easy path
> >from git to svn?
>
> I believe git-svn (included with git) should be able to do it. I'm
> quite sure it would work fine for linear history, but things may be
> trickier if branches are used.
>
> However, I think nobody would want to go from git to svn. Alone the
> ability to work on more than one patch at once is like getting an
> extra dimension, something that very few would want to give up.
Just to make myself clear, I didn't mean to argue that we'll want to migrate
from git to svn (I have yet to build an opinion of git myself). However,
I think it's very important that we have the option to do it in case we
want to. Being trapped somewhere you're not fond of is, like, bad thing
you know :-)
--
Robert Millan
<GPLv2> I know my rights; I want my phone call!
<DRM> What use is a phone call, if you are unable to speak?
(as seen on /.)
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-12 15:03 ` Otavio Salvador
@ 2007-12-12 16:21 ` Amin Azez
0 siblings, 0 replies; 41+ messages in thread
From: Amin Azez @ 2007-12-12 16:21 UTC (permalink / raw)
To: The development of GRUB 2
[-- Attachment #1: Type: text/plain, Size: 649 bytes --]
* Otavio Salvador wrote, On 12/12/07 15:03:
> Robert Millan <rmh@aybabtu.com> writes:
>
>
>> I myself have no objection. I'd prefer svn, but that's not supported by
>> Savannah yet, and anything is better than CVS IMO. In the event that we
>> decide to migrate to svn in the future, though, is there an easy path
>> from git to svn?
>>
>
> I doubt that you'll want to come back to SVN after you get used to
> GIT.
>
> I thought it was going to be hard to learn but it was really easy and
> there's a lot of documentation about it available.
>
>
Git was very hard a while ago, but the porcelain (as it is called) is
much improved.
Sam
[-- Attachment #2: Type: text/html, Size: 1120 bytes --]
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-06 17:45 Switching to git? Pavel Roskin
2007-12-06 18:04 ` Otavio Salvador
2007-12-12 14:30 ` Robert Millan
@ 2007-12-15 10:54 ` Robert Millan
2007-12-16 4:32 ` Otavio Salvador
2007-12-17 7:02 ` Yoshinori K. Okuji
2 siblings, 2 replies; 41+ messages in thread
From: Robert Millan @ 2007-12-15 10:54 UTC (permalink / raw)
To: The development of GRUB 2
So it seems nobody objected. What do we need to proceed?
On Thu, Dec 06, 2007 at 12:45:48PM -0500, Pavel Roskin wrote:
> Hello!
>
> This is a reaction to the "BTS overhaul" post, I just don't want to
> hijack the thread with a separate topic.
>
> If someone asked me what is the project that is not using git but would
> benefit from it most, I would say it's GRUB.
>
> First and foremost, git (together with StGIT and other tools) relieves
> the pressure to commit. CVS and Subversion allow to work with only one
> patch at a time. I can have only one patch applied to the working
> directory if I want to commit one of the patches safely. There is no
> support for refining series of patches. StGIT exists precisely for
> that, and even bare git is getting better at that.
>
> Another closely related advantage is that git allows parallel
> development. Branching is built in from the beginning. There are
> unofficial forks of GRUB 1 already (such as grub4dos). git would help
> turn forks into branches, bring them under one roof and eventually allow
> merging all useful features together.
>
> Not to be overlooked it the git-bisect command. No amount of code
> review can prevent bugs, especially for software that interacts with
> "black box" firmware and hardware. Having an effective mechanism for
> bug isolation is essential.
>
> Tools for viewing history of the git repository, such as qgit, gitk and
> tig have no equivalents for CVS. And the tools for mailing series of
> patches are great time savers. git is actively developed and has a
> vibrant community. Yet it's well past the point where major
> incompatibilities are routinely introduced.
>
> Other GNU projects have switched to git. Savannah supports git. The
> list of the GNU projects using git is pretty impressive:
> http://git.sv.gnu.org/gitweb/
>
> I think GNU GRUB would be a welcome addition.
>
> --
> Regards,
> Pavel Roskin
>
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> http://lists.gnu.org/mailman/listinfo/grub-devel
>
--
Robert Millan
<GPLv2> I know my rights; I want my phone call!
<DRM> What use is a phone call, if you are unable to speak?
(as seen on /.)
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-15 10:54 ` Robert Millan
@ 2007-12-16 4:32 ` Otavio Salvador
2007-12-16 11:03 ` Robert Millan
2007-12-17 7:02 ` Yoshinori K. Okuji
1 sibling, 1 reply; 41+ messages in thread
From: Otavio Salvador @ 2007-12-16 4:32 UTC (permalink / raw)
To: The development of GRUB 2
Robert Millan <rmh@aybabtu.com> writes:
> So it seems nobody objected. What do we need to proceed?
Prepare a file with authors names to be used during the conversion and
a run to git-cvsimport using it? :-)
--
O T A V I O S A L V A D O R
---------------------------------------------
E-mail: otavio@debian.org UIN: 5906116
GNU/Linux User: 239058 GPG ID: 49A5F855
Home Page: http://otavio.ossystems.com.br
---------------------------------------------
"Microsoft sells you Windows ... Linux gives
you the whole house."
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-16 4:32 ` Otavio Salvador
@ 2007-12-16 11:03 ` Robert Millan
2007-12-16 17:21 ` Pavel Roskin
0 siblings, 1 reply; 41+ messages in thread
From: Robert Millan @ 2007-12-16 11:03 UTC (permalink / raw)
To: The development of GRUB 2
On Sun, Dec 16, 2007 at 02:32:29AM -0200, Otavio Salvador wrote:
> Robert Millan <rmh@aybabtu.com> writes:
>
> > So it seems nobody objected. What do we need to proceed?
>
> Prepare a file with authors names to be used during the conversion and
> a run to git-cvsimport using it? :-)
I mean in the context of Savannah.
--
Robert Millan
<GPLv2> I know my rights; I want my phone call!
<DRM> What use is a phone call, if you are unable to speak?
(as seen on /.)
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-16 11:03 ` Robert Millan
@ 2007-12-16 17:21 ` Pavel Roskin
0 siblings, 0 replies; 41+ messages in thread
From: Pavel Roskin @ 2007-12-16 17:21 UTC (permalink / raw)
To: The development of GRUB 2, Robert Millan
Quoting Robert Millan <rmh@aybabtu.com>:
> On Sun, Dec 16, 2007 at 02:32:29AM -0200, Otavio Salvador wrote:
>> Robert Millan <rmh@aybabtu.com> writes:
>>
>> > So it seems nobody objected. What do we need to proceed?
>>
>> Prepare a file with authors names to be used during the conversion and
>> a run to git-cvsimport using it? :-)
>
> I mean in the context of Savannah.
This page has the necessary information:
http://savannah.gnu.org/maintenance/UsingGit
You'll probably need to enable Git support on Savannah first (I don't
see it mentioned, but it should be easy), just to make sure it's OK
and you have the necessary permissions.
Next step is the conversion. That page tells how to get the CVS
repository from Savannah. I would probably use git-cvsimport from the
latest git for the conversion. Or maybe I would try parsecvs as well
and check the results. It's very important to verify the repository
with gitk and qgit.
Then push the repository to Savannah as described. Make sure you can
check out. If you have anything to commit and push, check it too
(maybe some documentation change mentioning git). Once everything is
working, disable CVS support for the project.
--
Regards,
Pavel Roskin
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-15 10:54 ` Robert Millan
2007-12-16 4:32 ` Otavio Salvador
@ 2007-12-17 7:02 ` Yoshinori K. Okuji
2007-12-17 11:11 ` Markus Elfring
` (2 more replies)
1 sibling, 3 replies; 41+ messages in thread
From: Yoshinori K. Okuji @ 2007-12-17 7:02 UTC (permalink / raw)
To: The development of GRUB 2
On Saturday 15 December 2007 11:54, Robert Millan wrote:
> So it seems nobody objected. What do we need to proceed?
I do object. Personally, I believe that git is inferior to other modern
version control systems, thus I don't want to move. If we do, I prefer to go
with something better.
Okuji
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-17 7:02 ` Yoshinori K. Okuji
@ 2007-12-17 11:11 ` Markus Elfring
2007-12-17 23:53 ` willem
2007-12-17 11:40 ` Tomáš Ebenlendr
2007-12-17 11:58 ` Otavio Salvador
2 siblings, 1 reply; 41+ messages in thread
From: Markus Elfring @ 2007-12-17 11:11 UTC (permalink / raw)
To: grub-devel
> I do object. Personally, I believe that git is inferior to other modern
> version control systems, thus I don't want to move. If we do, I prefer to go
> with something better.
Which features are you missing?
http://en.wikipedia.org/wiki/Comparison_of_revision_control_software
Which management software do you prefer at the moment?
Regards,
Markus
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-17 7:02 ` Yoshinori K. Okuji
2007-12-17 11:11 ` Markus Elfring
@ 2007-12-17 11:40 ` Tomáš Ebenlendr
2007-12-17 12:20 ` Markus Elfring
2007-12-17 11:58 ` Otavio Salvador
2 siblings, 1 reply; 41+ messages in thread
From: Tomáš Ebenlendr @ 2007-12-17 11:40 UTC (permalink / raw)
To: The development of GRUB 2
Dne 17 Prosinec 2007, 08:02, Yoshinori K. Okuji napsal(a):
> I do object. Personally, I believe that git is inferior to other modern
> version control systems, thus I don't want to move. If we do, I prefer to
> go with something better.
>
> Okuji
Inferior? I see the disadvantage, that now it works only on unix.
But I think that Linuz had very good reasons to write git.
Git is young, but it was/is written with very deep knowledge of
development process, which is not true for other free version systems. (It
also uses ideas from BitKeeper, which is commercial, as linux developers
were using it before.) Git does not need 'server' so it is simple for
users to clone git repository and track their changes there. (This holds
not for subversion.)
I took a look on wikipedia's comparison of rcs:
http://en.wikipedia.org/wiki/Comparison_of_revision_control_software
E.g. the table 'Features' is interresting. There are very few totally
green rows, git is one of them. (mercurial is the other noncomercial green
row).
--
Tomas Ebenlendr
http://drak.ucw.cz/~ebik
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-17 7:02 ` Yoshinori K. Okuji
2007-12-17 11:11 ` Markus Elfring
2007-12-17 11:40 ` Tomáš Ebenlendr
@ 2007-12-17 11:58 ` Otavio Salvador
2007-12-18 0:10 ` willem
2 siblings, 1 reply; 41+ messages in thread
From: Otavio Salvador @ 2007-12-17 11:58 UTC (permalink / raw)
To: The development of GRUB 2
"Yoshinori K. Okuji" <okuji@enbug.org> writes:
> On Saturday 15 December 2007 11:54, Robert Millan wrote:
>> So it seems nobody objected. What do we need to proceed?
>
> I do object. Personally, I believe that git is inferior to other modern
> version control systems, thus I don't want to move. If we do, I prefer to go
> with something better.
Please cite the ones you think are superior so we all can discuss it.
--
O T A V I O S A L V A D O R
---------------------------------------------
E-mail: otavio@debian.org UIN: 5906116
GNU/Linux User: 239058 GPG ID: 49A5F855
Home Page: http://otavio.ossystems.com.br
---------------------------------------------
"Microsoft sells you Windows ... Linux gives
you the whole house."
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-17 11:40 ` Tomáš Ebenlendr
@ 2007-12-17 12:20 ` Markus Elfring
0 siblings, 0 replies; 41+ messages in thread
From: Markus Elfring @ 2007-12-17 12:20 UTC (permalink / raw)
To: grub-devel
> Inferior? I see the disadvantage, that now it works only on unix.
This view is incomplete.
http://en.wikipedia.org/wiki/Git_%28software%29#Portability
There might be some inconvenience so far. TortoiseSVN is nice because it works
as a shell extension for the Windows Explorer.
Trac can provide a web interface to several source control systems.
Regards,
Markus
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-17 11:11 ` Markus Elfring
@ 2007-12-17 23:53 ` willem
0 siblings, 0 replies; 41+ messages in thread
From: willem @ 2007-12-17 23:53 UTC (permalink / raw)
To: The development of GRUB 2
Markus Elfring wrote:
>> I do object. Personally, I believe that git is inferior to other modern
>> version control systems, thus I don't want to move. If we do, I prefer to go
>> with something better.
>>
>
> Which features are you missing?
> http://en.wikipedia.org/wiki/Comparison_of_revision_control_software
>
> Which management software do you prefer at the moment?
>
> Regards,
> Markus
>
>
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> http://lists.gnu.org/mailman/listinfo/grub-devel
>
>
There are so many version control systems under active development, so
it is hard to
choose the best one.
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-17 11:58 ` Otavio Salvador
@ 2007-12-18 0:10 ` willem
2007-12-18 1:20 ` Pavel Roskin
0 siblings, 1 reply; 41+ messages in thread
From: willem @ 2007-12-18 0:10 UTC (permalink / raw)
To: The development of GRUB 2
Otavio Salvador wrote:
> "Yoshinori K. Okuji" <okuji@enbug.org> writes:
>
>
>> On Saturday 15 December 2007 11:54, Robert Millan wrote:
>>
>>> So it seems nobody objected. What do we need to proceed?
>>>
>> I do object. Personally, I believe that git is inferior to other modern
>> version control systems, thus I don't want to move. If we do, I prefer to go
>> with something better.
>>
>
> Please cite the ones you think are superior so we all can discuss it.
>
>
Sun did choose Mercurial
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-18 0:10 ` willem
@ 2007-12-18 1:20 ` Pavel Roskin
2007-12-18 2:04 ` Otavio Salvador
2007-12-18 2:57 ` Yoshinori K. Okuji
0 siblings, 2 replies; 41+ messages in thread
From: Pavel Roskin @ 2007-12-18 1:20 UTC (permalink / raw)
To: The development of GRUB 2, willem
Quoting willem <wli222@casema.nl>:
> Otavio Salvador wrote:
>> "Yoshinori K. Okuji" <okuji@enbug.org> writes:
>>
>>
>>> On Saturday 15 December 2007 11:54, Robert Millan wrote:
>>>
>>>> So it seems nobody objected. What do we need to proceed?
>>>>
>>> I do object. Personally, I believe that git is inferior to other
>>> modern version control systems, thus I don't want to move. If we
>>> do, I prefer to go with something better.
>>>
>>
>> Please cite the ones you think are superior so we all can discuss it.
>>
>>
> Sun did choose Mercurial
We are limited by what Savannah provides, unless some other place is
found to host the project, which would complicate things.
If there are any specific problems with git pertinent to GRUB or
preferences of the GRUB developers, I'm ready to convey them to the
git developers and take the blame (if any).
We don't have to look for the best tool, just for the best tool for
this particular project and those working on it.
--
Regards,
Pavel Roskin
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-18 1:20 ` Pavel Roskin
@ 2007-12-18 2:04 ` Otavio Salvador
2007-12-18 2:57 ` Yoshinori K. Okuji
1 sibling, 0 replies; 41+ messages in thread
From: Otavio Salvador @ 2007-12-18 2:04 UTC (permalink / raw)
To: The development of GRUB 2; +Cc: willem
Pavel Roskin <proski@gnu.org> writes:
> If there are any specific problems with git pertinent to GRUB or
> preferences of the GRUB developers, I'm ready to convey them to the
> git developers and take the blame (if any).
Personally I'm very happy with GIT and I'm using it in daily basis for
most of project I'm active on.
The easy merging and the wonderful workflow it allow is really
nice. Besides that, it's really active and rapidly improving.
> We don't have to look for the best tool, just for the best tool for
> this particular project and those working on it.
For me, it fits very well.
I think it's worth to cite about http://packages.debian.org/sid/mr
that allows to abstract the SCM and use a single command set for daily
uses.
--
O T A V I O S A L V A D O R
---------------------------------------------
E-mail: otavio@debian.org UIN: 5906116
GNU/Linux User: 239058 GPG ID: 49A5F855
Home Page: http://otavio.ossystems.com.br
---------------------------------------------
"Microsoft sells you Windows ... Linux gives
you the whole house."
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-18 1:20 ` Pavel Roskin
2007-12-18 2:04 ` Otavio Salvador
@ 2007-12-18 2:57 ` Yoshinori K. Okuji
2007-12-18 12:05 ` Otavio Salvador
2007-12-18 16:29 ` Pavel Roskin
1 sibling, 2 replies; 41+ messages in thread
From: Yoshinori K. Okuji @ 2007-12-18 2:57 UTC (permalink / raw)
To: The development of GRUB 2
On Tuesday 18 December 2007 02:20, Pavel Roskin wrote:
> If there are any specific problems with git pertinent to GRUB or
> preferences of the GRUB developers, I'm ready to convey them to the
> git developers and take the blame (if any).
>
> We don't have to look for the best tool, just for the best tool for
> this particular project and those working on it.
I bet that you under-estimate the pain of migrating to another SCM. I have
experienced such migrations twice, and they were always a pain, something
that nobody wants to repeat.
Some reasons:
- The repository will be temporarily down (negligible in a long term).
- All developers are forced to install new software and learn it (always a
pain).
- All local (pending) changes in working copies become very hard to merge
(extremely painful).
- It is hard to re-select yet another SCM later, because old software is
usually better supported for migrations, i.e. it's not cheap to migrate back
and forth (very painful).
Since Robert was in a hurry so much, I had to stop it immediately with very
terse words. I am sorry about that, but please do not make a haste. I have
discussed (and objected to) possibilities to move to another SCM in the IRC,
the mailing list, etc., but it seems that people forget my words at every
time. It's sad to me, as I must repeat the same thing again and again.
First of all, this is not a hurry at all. CVS is far from nice, but it has
worked well for GRUB for the past 10 years, and we haven't had any critical
problem with it. This is because GRUB is a very simple project from the
viewpoint of source code management.
You might be excited with technical innovations, but please don't forget that
it costs to change things. Note that I don't mean that we should't change,
but that we must be a bit more conservative with regard to SCM. Since we are
not developing SCM itself, we should consider carefully pros and cons, before
making an action.
Ok, now about the git. As Tomáš pointed out, the lack of portability is
regression from CVS. If you think, for example, grub4dos is important, why
can you choose git?
Besides the portability, I don't like the merging algorithm. If my knowledge
is not completely outdated yet, git still uses 3-way merging, right? I don't
describe the math here, as it is (a little) documented in the revctrl wiki:
http://revctrl.org/CategoryMergeAlgorithm
As long as git uses this naive algorithm, I am not willing to use it.
CVS's merging algorithm is also very simple and stupid, but it is not a big
problem, because CVS is centralized. When getting distributed, things get far
more complicated and critical, since there are so many corner cases where one
cannot see in a centralized SCM.
These are the requirements for a new SCM in the context of GRUB from my point
of view:
- Free Software (definitely!)
- Good merging algorithm (if distributed)
- Good web interface (as good as viewvc)
- Commit notification by email at the server side
- Good portability (as good as CVS)
- Ability to track changes efficiently, i.e. annotation (probably supported by
most SCMs)
- Usable interface (not like arch)
- Good user document (like svnbook)
- No conflict in a (main) repository (not like monotone)
Other features are not so important, since GRUB is small.
Here are some examples:
- Subversion (+ svk) is good enough, if we only sometimes want to work
offline.
- Bazaar looks good, if we believe that their claim is all correct.
Okuji
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-18 2:57 ` Yoshinori K. Okuji
@ 2007-12-18 12:05 ` Otavio Salvador
2007-12-18 18:30 ` Vesa Jääskeläinen
2007-12-22 8:28 ` Yoshinori K. Okuji
2007-12-18 16:29 ` Pavel Roskin
1 sibling, 2 replies; 41+ messages in thread
From: Otavio Salvador @ 2007-12-18 12:05 UTC (permalink / raw)
To: The development of GRUB 2
"Yoshinori K. Okuji" <okuji@enbug.org> writes:
> On Tuesday 18 December 2007 02:20, Pavel Roskin wrote:
>> If there are any specific problems with git pertinent to GRUB or
>> preferences of the GRUB developers, I'm ready to convey them to the
>> git developers and take the blame (if any).
>>
>> We don't have to look for the best tool, just for the best tool for
>> this particular project and those working on it.
>
> I bet that you under-estimate the pain of migrating to another SCM. I have
> experienced such migrations twice, and they were always a pain, something
> that nobody wants to repeat.
I experienced such migrations a lot of times and have moved projects
from:
- CVS -> SVN
- SVN -> Bzr
- SVN -> GIT
- CVS -> Darcs
And others too.
> - All developers are forced to install new software and learn it (always a
> pain).
Developers are used (or ought to) to learn new things since it's of
programming art. I guess learning wouldn't be a problem.
> - All local (pending) changes in working copies become very hard to merge
> (extremely painful).
Just a "cvs diff > /tmp/foo ; cd ~/newrepo ; patch -p1 < /tmp/foo"
works for most of cases and then it's not a really big problem from my POV.
> - It is hard to re-select yet another SCM later, because old software is
> usually better supported for migrations, i.e. it's not cheap to migrate back
> and forth (very painful).
I guess nobody wants to come back to CVS after getting out from it.
> First of all, this is not a hurry at all. CVS is far from nice, but it has
> worked well for GRUB for the past 10 years, and we haven't had any critical
> problem with it. This is because GRUB is a very simple project from the
> viewpoint of source code management.
Sure it's. But all developers want to use more time working on code
then dealing with the bad merging of CVS and dealing with cvsps to
identify when something has been fixed and like.
> You might be excited with technical innovations, but please don't forget that
> it costs to change things. Note that I don't mean that we should't change,
> but that we must be a bit more conservative with regard to SCM. Since we are
> not developing SCM itself, we should consider carefully pros and cons, before
> making an action.
Agree on that. However since git does offer a CVS server this can be
reduced a lot allowing you and anyother that don't want to move to it
to stay using CVS for hacking.
> Ok, now about the git. As Tomáš pointed out, the lack of portability is
> regression from CVS. If you think, for example, grub4dos is important, why
> can you choose git?
Agree on that too.
It's not that bad[1] and users can use git with cygwin or via git-cvspserver.
1. http://git.or.cz/gitwiki/WindowsInstall
> Besides the portability, I don't like the merging algorithm. If my knowledge
> is not completely outdated yet, git still uses 3-way merging, right? I don't
> describe the math here, as it is (a little) documented in the revctrl wiki:
>
> http://revctrl.org/CategoryMergeAlgorithm
>
> As long as git uses this naive algorithm, I am not willing to use it.
While I agree that it's not the best merging algorithm I also fail to
see why it could be a blocker.
I've been using GIT for a while and I do not see conflicts very
ofthen. Linux kernel also does it and I don't see people complaining
about it.
Personally I don't like bazaar due performance problem. It's really
slow for big projects (it wouldn't be a big problem since GRUB is a
small one) and it changes its data format too ofthen.
If I'd going to choose, I'd go to GIT or Mercurial.
--
O T A V I O S A L V A D O R
---------------------------------------------
E-mail: otavio@debian.org UIN: 5906116
GNU/Linux User: 239058 GPG ID: 49A5F855
Home Page: http://otavio.ossystems.com.br
---------------------------------------------
"Microsoft sells you Windows ... Linux gives
you the whole house."
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-18 2:57 ` Yoshinori K. Okuji
2007-12-18 12:05 ` Otavio Salvador
@ 2007-12-18 16:29 ` Pavel Roskin
2007-12-22 8:50 ` Yoshinori K. Okuji
1 sibling, 1 reply; 41+ messages in thread
From: Pavel Roskin @ 2007-12-18 16:29 UTC (permalink / raw)
To: The development of GRUB 2, Yoshinori K. Okuji
Hello!
Quoting "Yoshinori K. Okuji" <okuji@enbug.org>:
> I bet that you under-estimate the pain of migrating to another SCM. I have
> experienced such migrations twice, and they were always a pain, something
> that nobody wants to repeat.
I went through some migrations (CVS to Subversion and CVS to git), and
it's not a trivial task, but it's not a big deal for other developers
who are not doing the migration.
> Some reasons:
>
> - The repository will be temporarily down (negligible in a long term).
Yes, negligible.
> - All developers are forced to install new software and learn it (always a
> pain).
We can alleviate it by switching to software that is already widely
used, so that the time invested into learning can be used on other
projects. Mercusial and git are good examples, as they are used in
many other projects. Monotone and darcs are not so popular; learning
them would give less benefits.
> - All local (pending) changes in working copies become very hard to merge
> (extremely painful).
Actually, the great thing about git (especially when used with StGIT)
is that the changes can sit in the local tree without any problem.
CVS, on the other hand, doesn't allow any organization of the local
changes. They can be exported to a diff file and applied to the new
repository, perhaps as more than one patch.
> - It is hard to re-select yet another SCM later, because old software is
> usually better supported for migrations, i.e. it's not cheap to migrate back
> and forth (very painful).
That's true, but only to a degree. Any serious contender would have
to support migration from git. Mercurial had it from the first months
if not days of development.
I don't see why we would need to migrate from git. It's good for
Linux, which is a much bigger project. It's under development, which
mean that it will improve.
Speaking of CVS, since it doesn't record the changesets, migrating
from it to anything will require some guesswork.
> Since Robert was in a hurry so much, I had to stop it immediately with very
> terse words. I am sorry about that, but please do not make a haste. I have
> discussed (and objected to) possibilities to move to another SCM in the IRC,
> the mailing list, etc., but it seems that people forget my words at every
> time. It's sad to me, as I must repeat the same thing again and again.
I didn't know that.
> First of all, this is not a hurry at all. CVS is far from nice, but it has
> worked well for GRUB for the past 10 years, and we haven't had any critical
> problem with it. This is because GRUB is a very simple project from the
> viewpoint of source code management.
The problem is, some patches need to be split into series. For
example, one patch prepares ground, the other makes the radical
switch, the third carries on some simplifications that become possible.
People who learned working with patch series are annoyed by a version
control system that doesn't provide facilities for that.
Another problem is bisecting bugs. git makes is possible in a simple,
effective and formal way, so that I don't have to look at the dates in
the changelog and guess where the next test point should be. I'm not
aware of any other version control system providing that feature. The
bisecting facility is important to assure code quality.
Finally, things like grub4dos should not be forks, they should be
branches. This would give then a better exposure. CVS branch support
is pathetic, and the same applies to Subversion, although for
different reasons.
> You might be excited with technical innovations, but please don't forget that
> it costs to change things. Note that I don't mean that we should't change,
> but that we must be a bit more conservative with regard to SCM. Since we are
> not developing SCM itself, we should consider carefully pros and cons, before
> making an action.
I see serious advantages when it comes to attracting developers,
fixing existing bugs and improving future changes.
> Ok, now about the git. As Tomáš pointed out, the lack of portability is
> regression from CVS. If you think, for example, grub4dos is important, why
> can you choose git?
I understand you are concerned about for Windows portability, not about DOS.
git works with Cygwin, and it's not an unrealistic requirement.
Looking at the amount of recent changes in git for things like newline
conversion, I'm sure that they come from the developers actually
working on Windows. An active development community assures code
quality and minimal bit rot.
> Besides the portability, I don't like the merging algorithm. If my knowledge
> is not completely outdated yet, git still uses 3-way merging, right? I don't
> describe the math here, as it is (a little) documented in the revctrl wiki:
>
> http://revctrl.org/CategoryMergeAlgorithm
>
> As long as git uses this naive algorithm, I am not willing to use it.
No, git uses recursive merge by default. But I don't see why it's important.
> CVS's merging algorithm is also very simple and stupid, but it is not a big
> problem, because CVS is centralized. When getting distributed, things get far
> more complicated and critical, since there are so many corner cases where one
> cannot see in a centralized SCM.
I'm afraid I don't understand this argument. Linux trees are merged
all the time, and nothing particularly bad happens. GRUB should heve
less corener cases, not more.
> These are the requirements for a new SCM in the context of GRUB from my point
> of view:
>
> - Free Software (definitely!)
> - Good merging algorithm (if distributed)
> - Good web interface (as good as viewvc)
> - Commit notification by email at the server side
> - Good portability (as good as CVS)
All this is present in git.
> - Ability to track changes efficiently, i.e. annotation (probably
> supported by
> most SCMs)
I don't know what it means.
> - Usable interface (not like arch)
> - Good user document (like svnbook)
git is very close, although the work is underway
> - No conflict in a (main) repository (not like monotone)
I think it's a policy issue. In any case, I don't see it as a problem
with git.
> Other features are not so important, since GRUB is small.
>
> Here are some examples:
>
> - Subversion (+ svk) is good enough, if we only sometimes want to work
> offline.
>
> - Bazaar looks good, if we believe that their claim is all correct.
I agree, but in both cases developers will have to learn something
they won't be using elsewhere, unlike git.
Last time I tries svk, it was adding some useless (for other
developers) annotations to the commit messages, so I thought it would
be impolite to others to commit directly from svk to the main
repository. StGIT keeps all marks to itself.
--
Regards,
Pavel Roskin
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-18 12:05 ` Otavio Salvador
@ 2007-12-18 18:30 ` Vesa Jääskeläinen
2007-12-18 21:32 ` Pavel Roskin
2007-12-19 0:11 ` Gregg C Levine
2007-12-22 8:28 ` Yoshinori K. Okuji
1 sibling, 2 replies; 41+ messages in thread
From: Vesa Jääskeläinen @ 2007-12-18 18:30 UTC (permalink / raw)
To: The development of GRUB 2
Otavio Salvador wrote:
> "Yoshinori K. Okuji" <okuji@enbug.org> writes:
>> Ok, now about the git. As Tomáš pointed out, the lack of portability is
>> regression from CVS. If you think, for example, grub4dos is important, why
>> can you choose git?
>
> Agree on that too.
>
> It's not that bad[1] and users can use git with cygwin or via git-cvspserver.
>
> 1. http://git.or.cz/gitwiki/WindowsInstall
Just leave cygwin out of the box... thank you!
cygwin is one of the worst pieces of software that just does not work
correctly. In my point-of-view portability means that you can use
software natively on some platform and it does not include installing
emulators or such to run software (like cygwin, wine).
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-18 18:30 ` Vesa Jääskeläinen
@ 2007-12-18 21:32 ` Pavel Roskin
2007-12-21 17:54 ` Vesa Jääskeläinen
2007-12-19 0:11 ` Gregg C Levine
1 sibling, 1 reply; 41+ messages in thread
From: Pavel Roskin @ 2007-12-18 21:32 UTC (permalink / raw)
To: The development of GRUB 2, Vesa Jääskeläinen
On Tue, 2007-12-18 at 20:30 +0200, Vesa Jääskeläinen wrote:
> Just leave cygwin out of the box... thank you!
>
> cygwin is one of the worst pieces of software that just does not work
> correctly.
I wonder if you have actually used the native Windows port of CVS.
> In my point-of-view portability means that you can use
> software natively on some platform and it does not include installing
> emulators or such to run software (like cygwin, wine).
OK, I just checked grub4dos sources, and it looks like that it should be
compiled either under Linux or in Cygwin. Look at the "build" script
written specifically for grub4dos - it's a shell script. If the build
system was using native tools like Visual C or even MinGW, we would see
very different build scripts.
Therefore, I don't see how native Windows portability of the version
control system can be an issue for GRUB.
Speaking of Cygwin, my experience with it has been much more positive,
especially if it's installed for one specific purpose like compiling
some project (as opposed to a playground for UNIX wannabees). I don't
think it's a requirement that is going to deter anyone from working on
GRUB.
The work on the native git is underway. Many scripts have been replaced
with C sources. I expect that effort to be completed before GRUB
actually needs that (i.e. before it compiles with Visual C or another
non-Cygwin Windows compiler).
And if you need any GUI, qgit is a native Windows application compiled
with Qt4. The "Tortoise" like GUI doesn't make much sense for git, as
it's file oriented, and git is changeset oriented. The Eclipse plugin
(egit) is available.
--
Regards,
Pavel Roskin
^ permalink raw reply [flat|nested] 41+ messages in thread
* RE: Switching to git?
2007-12-18 18:30 ` Vesa Jääskeläinen
2007-12-18 21:32 ` Pavel Roskin
@ 2007-12-19 0:11 ` Gregg C Levine
1 sibling, 0 replies; 41+ messages in thread
From: Gregg C Levine @ 2007-12-19 0:11 UTC (permalink / raw)
To: 'The development of GRUB 2'
Hello!
That comment about Cygwin is decidedly not true.
The collection is unstable as designed. It is an evolving collection of
ports based within reason on the same framework we have on Linux, and yes on
the BSD family. The big problem is what it's sitting on, and that's why it
is a moving target. The groups behind it are continuing to update and revise
the compatibility layer behind it.
I am afraid it will continue to be unstable as it continues to be evolving.
I should also add that the people behind my distribution do not like git
much either, however but they also include it. I've used it a few times. I
also do not like it much either.
I also have ambivalent feelings behind SVN and CVS.
Both have their good points and their bad points.
Bazaar and mercurial I am not at all fond of.
--
Gregg C Levine hansolofalcon@worldnet.att.net
"The Force will be with you always." Obi-Wan Kenobi
> -----Original Message-----
> From: grub-devel-bounces+hansolofalcon=worldnet.att.net@gnu.org
[mailto:grub-devel-
> bounces+hansolofalcon=worldnet.att.net@gnu.org] On Behalf Of Vesa
Jääskeläinen
> Sent: Tuesday, December 18, 2007 1:30 PM
> To: The development of GRUB 2
> Subject: Re: Switching to git?
>
> Otavio Salvador wrote:
> > "Yoshinori K. Okuji" <okuji@enbug.org> writes:
> >> Ok, now about the git. As TomC!E! pointed out, the lack of portability
is
> >> regression from CVS. If you think, for example, grub4dos is important,
why
> >> can you choose git?
> >
> > Agree on that too.
> >
> > It's not that bad[1] and users can use git with cygwin or via
git-cvspserver.
> >
> > 1. http://git.or.cz/gitwiki/WindowsInstall
>
> Just leave cygwin out of the box... thank you!
>
> cygwin is one of the worst pieces of software that just does not work
> correctly. In my point-of-view portability means that you can use
> software natively on some platform and it does not include installing
> emulators or such to run software (like cygwin, wine).
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-18 21:32 ` Pavel Roskin
@ 2007-12-21 17:54 ` Vesa Jääskeläinen
0 siblings, 0 replies; 41+ messages in thread
From: Vesa Jääskeläinen @ 2007-12-21 17:54 UTC (permalink / raw)
To: The development of GRUB 2
Pavel Roskin wrote:
> On Tue, 2007-12-18 at 20:30 +0200, Vesa Jääskeläinen wrote:
>
>> Just leave cygwin out of the box... thank you!
>>
>> cygwin is one of the worst pieces of software that just does not work
>> correctly.
>
> I wonder if you have actually used the native Windows port of CVS.
Do you want my copy of it ? CVS is quite freely available as native
version. And what the better, CVS integrates quite nicely to Eclipse.
Same goes for Subversion too.
>> In my point-of-view portability means that you can use
>> software natively on some platform and it does not include installing
>> emulators or such to run software (like cygwin, wine).
> Speaking of Cygwin, my experience with it has been much more positive,
> especially if it's installed for one specific purpose like compiling
> some project (as opposed to a playground for UNIX wannabees). I don't
> think it's a requirement that is going to deter anyone from working on
> GRUB.
You answered it yourself ;) IT just doesn't work for doing multiple
things. You have to carefully keep settings in working order if you want
to use it for multiple projects. Ever tried to compile Mozilla
Thunderbird under Windows?
> And if you need any GUI, qgit is a native Windows application compiled
> with Qt4. The "Tortoise" like GUI doesn't make much sense for git, as
> it's file oriented, and git is changeset oriented. The Eclipse plugin
> (egit) is available.
And have you really used the egit ? Eg. how well it works and so on. I
prefer not to jump between programs... It is just awkward.
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-18 12:05 ` Otavio Salvador
2007-12-18 18:30 ` Vesa Jääskeläinen
@ 2007-12-22 8:28 ` Yoshinori K. Okuji
2007-12-22 11:16 ` Robert Millan
2008-01-04 17:06 ` Jeroen Dekkers
1 sibling, 2 replies; 41+ messages in thread
From: Yoshinori K. Okuji @ 2007-12-22 8:28 UTC (permalink / raw)
To: The development of GRUB 2
On Tuesday 18 December 2007 13:05, Otavio Salvador wrote:
> > - All developers are forced to install new software and learn it (always
> > a pain).
>
> Developers are used (or ought to) to learn new things since it's of
> programming art. I guess learning wouldn't be a problem.
From a theoretical point of view, you're definitely right, but the reality
looks reverse to me. For instance, look at the inability of developers to
editors... Even if Emacs is far superior when writing GNU-style C code, vi
users never try to learn how to use Emacs. When it comes to command-line
utilities vs. graphical applications, the situation is even worse.
In my experience, (unfortunately) developers are too lazy to change tools.
They change, only when they are forced or excited for some (geeky) reason.
This includes myself.
> > - All local (pending) changes in working copies become very hard to merge
> > (extremely painful).
>
> Just a "cvs diff > /tmp/foo ; cd ~/newrepo ; patch -p1 < /tmp/foo"
> works for most of cases and then it's not a really big problem from my POV.
It is a problem. It is catastrophic, especially when an original repository is
down.
BTW, I have 4 different working copies of GRUB locally. All of them have
small, different changes not committed. Do you think I would be happy to deal
with these changes with a "mostly-working" solution? If I don't see more
benefit from migrating to another SCM, I really don't want.
> > - It is hard to re-select yet another SCM later, because old software is
> > usually better supported for migrations, i.e. it's not cheap to migrate
> > back and forth (very painful).
>
> I guess nobody wants to come back to CVS after getting out from it.
You need it, if a new SCM does not have a converter directly.
> Agree on that. However since git does offer a CVS server this can be
> reduced a lot allowing you and anyother that don't want to move to it
> to stay using CVS for hacking.
This is nice.
> > Ok, now about the git. As Tomáš pointed out, the lack of portability is
> > regression from CVS. If you think, for example, grub4dos is important,
> > why can you choose git?
>
> Agree on that too.
>
> It's not that bad[1] and users can use git with cygwin or via
> git-cvspserver.
>
> 1. http://git.or.cz/gitwiki/WindowsInstall
I can't say if it is good or not, since I myself does not use Windows at all
these days. I leave the evaluation to someone who uses Windows every day.
> While I agree that it's not the best merging algorithm I also fail to
> see why it could be a blocker.
>
> I've been using GIT for a while and I do not see conflicts very
> ofthen. Linux kernel also does it and I don't see people complaining
> about it.
The problem is not conflicts but merging. Usually, people don't understand the
importance, until they get weird merging results, and spend several days only
to fix up wrong results. However, if you notice a merging problem, you are
still lucky; in particular when you merge big changes, it is not easy to see
how merging went well. Sometimes, having conflicts is much better, because
you obtain a chance to see what your SCM thinks. When merging is done
silently, and it is wrong, the effort on finding mistakes is tremendous.
> Personally I don't like bazaar due performance problem. It's really
> slow for big projects (it wouldn't be a big problem since GRUB is a
> small one) and it changes its data format too ofthen.
Hmm, I thought they have fixed the performance issues already? About the data
format, I have no idea. jbailey, do you have any comment? ;)
>
> If I'd going to choose, I'd go to GIT or Mercurial.
Mercurial is not bad, except for the 3-way merging.
Okuji
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-18 16:29 ` Pavel Roskin
@ 2007-12-22 8:50 ` Yoshinori K. Okuji
2007-12-22 11:20 ` Robert Millan
0 siblings, 1 reply; 41+ messages in thread
From: Yoshinori K. Okuji @ 2007-12-22 8:50 UTC (permalink / raw)
To: The development of GRUB 2
On Tuesday 18 December 2007 17:29, Pavel Roskin wrote:
> We can alleviate it by switching to software that is already widely
> used, so that the time invested into learning can be used on other
> projects. Mercusial and git are good examples, as they are used in
> many other projects. Monotone and darcs are not so popular; learning
> them would give less benefits.
I don't admit that git is popular, personally. It is famous only among Linux
fans. If we talk about popularity, CVS and Subversion outperform. Everything
else is not popular enough to expect that one already has some experience or
can reuse experience with something else.
> Actually, the great thing about git (especially when used with StGIT)
> is that the changes can sit in the local tree without any problem.
> CVS, on the other hand, doesn't allow any organization of the local
> changes. They can be exported to a diff file and applied to the new
> repository, perhaps as more than one patch.
This is about git itself. I was talking about remaining changes against the
CVS repository.
> I don't see why we would need to migrate from git. It's good for
> Linux, which is a much bigger project. It's under development, which
> mean that it will improve.
Much bigger does not mean that it is suitable for everything, as well as
supercomputer does not fit into mobile usage.
Please note that Linux has been developed in a very weird way for a long time.
For many, many years, Linus refused to use any kind of SCM, but he used a
different kind of SCM, named Alan Cox. Since Alan did many clever things
autonomously, like choosing a subset of patch set, on-the-fly merging, etc.,
their usage pattern of git is still very much affected by the development
model in the early days.
You can see a lot of other differences as well. For example, GRUB uses
autoconf. Linux does not. This has a good reason, as the configuration of
Linux is involved with many dependencies, and it is not easy to track such a
graph with autoconf. But this does not mean anything like GRUB shouldn't use
autoconf.
> The problem is, some patches need to be split into series. For
> example, one patch prepares ground, the other makes the radical
> switch, the third carries on some simplifications that become possible.
>
> People who learned working with patch series are annoyed by a version
> control system that doesn't provide facilities for that.
>
> Another problem is bisecting bugs. git makes is possible in a simple,
> effective and formal way, so that I don't have to look at the dates in
> the changelog and guess where the next test point should be. I'm not
> aware of any other version control system providing that feature. The
> bisecting facility is important to assure code quality.
>
> Finally, things like grub4dos should not be forks, they should be
> branches. This would give then a better exposure. CVS branch support
> is pathetic, and the same applies to Subversion, although for
> different reasons.
Sure.
> > You might be excited with technical innovations, but please don't forget
> > that it costs to change things. Note that I don't mean that we should't
> > change, but that we must be a bit more conservative with regard to SCM.
> > Since we are not developing SCM itself, we should consider carefully pros
> > and cons, before making an action.
>
> I see serious advantages when it comes to attracting developers,
> fixing existing bugs and improving future changes.
It's difficult to answer. In my case, it is the most important that I have a
tool in my computer to check out a working copy, and I know how to use it
already. Otherwise, I tend to just give up. (In fact, I never try to
contribute to a project which uses darcs...)
> > Ok, now about the git. As Tomáš pointed out, the lack of portability is
> > regression from CVS. If you think, for example, grub4dos is important,
> > why can you choose git?
>
> I understand you are concerned about for Windows portability, not about
> DOS.
:)
> No, git uses recursive merge by default. But I don't see why it's
> important.
It's interesting to know. Thank you very much. Do you have any pointer to
learn their algorithm for more details?
> > - Free Software (definitely!)
> > - Good merging algorithm (if distributed)
> > - Good web interface (as good as viewvc)
> > - Commit notification by email at the server side
> > - Good portability (as good as CVS)
>
> All this is present in git.
When coming to good web interface, I feel that gitweb is so difficult to
understand... For now, the only "acceptable" ones are viewvc and websvn for
me.
> > - Ability to track changes efficiently, i.e. annotation (probably
> > supported by
> > most SCMs)
>
> I don't know what it means.
cvs annotate, svn blame, like that.
> > - Usable interface (not like arch)
> > - Good user document (like svnbook)
>
> git is very close, although the work is underway
>
> > - No conflict in a (main) repository (not like monotone)
>
> I think it's a policy issue. In any case, I don't see it as a problem
> with git.
I simply don't know if git supports this policy.
> I agree, but in both cases developers will have to learn something
> they won't be using elsewhere, unlike git.
Again, git is not that popular.
> Last time I tries svk, it was adding some useless (for other
> developers) annotations to the commit messages, so I thought it would
> be impolite to others to commit directly from svk to the main
> repository. StGIT keeps all marks to itself.
Right.
Okuji
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-22 8:28 ` Yoshinori K. Okuji
@ 2007-12-22 11:16 ` Robert Millan
2007-12-23 4:58 ` Pavel Roskin
2008-01-04 17:06 ` Jeroen Dekkers
1 sibling, 1 reply; 41+ messages in thread
From: Robert Millan @ 2007-12-22 11:16 UTC (permalink / raw)
To: The development of GRUB 2
On Sat, Dec 22, 2007 at 09:28:28AM +0100, Yoshinori K. Okuji wrote:
> On Tuesday 18 December 2007 13:05, Otavio Salvador wrote:
> > > - All developers are forced to install new software and learn it (always
> > > a pain).
> >
> > Developers are used (or ought to) to learn new things since it's of
> > programming art. I guess learning wouldn't be a problem.
>
> From a theoretical point of view, you're definitely right, but the reality
> looks reverse to me. For instance, look at the inability of developers to
> editors... Even if Emacs is far superior when writing GNU-style C code, vi
> users never try to learn how to use Emacs. When it comes to command-line
> utilities vs. graphical applications, the situation is even worse.
>
> In my experience, (unfortunately) developers are too lazy to change tools.
> They change, only when they are forced or excited for some (geeky) reason.
> This includes myself.
Maybe you find interesting to know that I never use RCS (any of them) merging
feature at all. I prefer to extract patches from RCS and manage them myself.
I often even manage branches by hand as well.
--
Robert Millan
<GPLv2> I know my rights; I want my phone call!
<DRM> What use is a phone call, if you are unable to speak?
(as seen on /.)
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-22 8:50 ` Yoshinori K. Okuji
@ 2007-12-22 11:20 ` Robert Millan
2007-12-22 12:28 ` Yoshinori K. Okuji
0 siblings, 1 reply; 41+ messages in thread
From: Robert Millan @ 2007-12-22 11:20 UTC (permalink / raw)
To: The development of GRUB 2
On Sat, Dec 22, 2007 at 09:50:50AM +0100, Yoshinori K. Okuji wrote:
> > Finally, things like grub4dos should not be forks, they should be
> > branches. This would give then a better exposure. CVS branch support
> > is pathetic, and the same applies to Subversion, although for
> > different reasons.
What's wrong with Subversion branching ? Or did you mean merging?
--
Robert Millan
<GPLv2> I know my rights; I want my phone call!
<DRM> What use is a phone call, if you are unable to speak?
(as seen on /.)
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-22 11:20 ` Robert Millan
@ 2007-12-22 12:28 ` Yoshinori K. Okuji
0 siblings, 0 replies; 41+ messages in thread
From: Yoshinori K. Okuji @ 2007-12-22 12:28 UTC (permalink / raw)
To: The development of GRUB 2
On Saturday 22 December 2007 12:20, Robert Millan wrote:
> On Sat, Dec 22, 2007 at 09:50:50AM +0100, Yoshinori K. Okuji wrote:
> > > Finally, things like grub4dos should not be forks, they should be
> > > branches. This would give then a better exposure. CVS branch support
> > > is pathetic, and the same applies to Subversion, although for
> > > different reasons.
>
> What's wrong with Subversion branching ? Or did you mean merging?
Subversion's branches are as stupid as CVS's, because they don't remember what
have been merged by themselves.
Okuji
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-22 11:16 ` Robert Millan
@ 2007-12-23 4:58 ` Pavel Roskin
0 siblings, 0 replies; 41+ messages in thread
From: Pavel Roskin @ 2007-12-23 4:58 UTC (permalink / raw)
To: The development of GRUB 2, Robert Millan
Quoting Robert Millan <rmh@aybabtu.com>:
> Maybe you find interesting to know that I never use RCS (any of them) merging
> feature at all. I prefer to extract patches from RCS and manage them myself.
> I often even manage branches by hand as well.
Just to clear any misunderstanding, extracting a patch and applying to
another file is still merging. Unlike the 3-way merge, the patch
command won't generate a merged file with conflicts that require
manual editing. But more trivial kinds of merging will happen is the
patch command considers it safe. Applying a patch cleanly doesn't
guarantee that the resulting file will compile and/or work properly.
Some bugs caused by merging can be avoided like other bugs, i.e. by
using sane programming and testing practices. Some bugs just need to
be tracked down. That's just a fact of life. For instance, some code
could be duplicated in one branch and fixed in another, resulting in
one copy being unfixed. A patch could introduce a call to a function
that changed its semantic after the base revision of the patch. Both
can be prevented, but only to a degree.
--
Regards,
Pavel Roskin
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2007-12-22 8:28 ` Yoshinori K. Okuji
2007-12-22 11:16 ` Robert Millan
@ 2008-01-04 17:06 ` Jeroen Dekkers
2008-01-04 17:39 ` Otavio Salvador
1 sibling, 1 reply; 41+ messages in thread
From: Jeroen Dekkers @ 2008-01-04 17:06 UTC (permalink / raw)
To: The development of GRUB 2
At Sat, 22 Dec 2007 09:28:28 +0100,
Yoshinori K. Okuji wrote:
>
> On Tuesday 18 December 2007 13:05, Otavio Salvador wrote:
> > Personally I don't like bazaar due performance problem. It's really
> > slow for big projects (it wouldn't be a big problem since GRUB is a
> > small one) and it changes its data format too ofthen.
>
> Hmm, I thought they have fixed the performance issues already? About the data
> format, I have no idea. jbailey, do you have any comment? ;)
I've used bzr when working on my summer of code project 1.5 years ago
and didn't have any issues with performance. And this was before they
did all the performance improvements. Maybe with big source trees like
Linux it's still too slow, but for GRUB this is really no problem.
The changes in data format shouldn't really be any problem in
practice, because newer versions can still read the older disk format
and the network protocol doesn't change most of the time.
Jeroen Dekkers
^ permalink raw reply [flat|nested] 41+ messages in thread
* Re: Switching to git?
2008-01-04 17:06 ` Jeroen Dekkers
@ 2008-01-04 17:39 ` Otavio Salvador
0 siblings, 0 replies; 41+ messages in thread
From: Otavio Salvador @ 2008-01-04 17:39 UTC (permalink / raw)
To: The development of GRUB 2
Jeroen Dekkers <jeroen@vrijschrift.org> writes:
> At Sat, 22 Dec 2007 09:28:28 +0100,
> Yoshinori K. Okuji wrote:
>>
>> On Tuesday 18 December 2007 13:05, Otavio Salvador wrote:
>> > Personally I don't like bazaar due performance problem. It's really
>> > slow for big projects (it wouldn't be a big problem since GRUB is a
>> > small one) and it changes its data format too ofthen.
>>
>> Hmm, I thought they have fixed the performance issues already? About the data
>> format, I have no idea. jbailey, do you have any comment? ;)
>
> I've used bzr when working on my summer of code project 1.5 years ago
> and didn't have any issues with performance. And this was before they
> did all the performance improvements. Maybe with big source trees like
> Linux it's still too slow, but for GRUB this is really no problem.
I'm not talking about working locally (looks like this is what you've
done) but pulling and pushing changes remotely.
> The changes in data format shouldn't really be any problem in
> practice, because newer versions can still read the older disk format
> and the network protocol doesn't change most of the time.
I think it's. If you want to gain their performance improvements you
_need_ to upgrade. So _all_ people involved will need to have the need
version installed too.
--
O T A V I O S A L V A D O R
---------------------------------------------
E-mail: otavio@debian.org UIN: 5906116
GNU/Linux User: 239058 GPG ID: 49A5F855
Home Page: http://otavio.ossystems.com.br
---------------------------------------------
"Microsoft sells you Windows ... Linux gives
you the whole house."
^ permalink raw reply [flat|nested] 41+ messages in thread
end of thread, other threads:[~2008-01-04 17:58 UTC | newest]
Thread overview: 41+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-12-06 17:45 Switching to git? Pavel Roskin
2007-12-06 18:04 ` Otavio Salvador
2007-12-07 1:42 ` willem
2007-12-07 11:43 ` Otavio Salvador
2007-12-08 5:39 ` willem
2007-12-08 0:06 ` Vesa Jääskeläinen
2007-12-08 1:16 ` Otavio Salvador
2007-12-08 2:54 ` Pavel Roskin
2007-12-12 14:30 ` Robert Millan
2007-12-12 15:03 ` Otavio Salvador
2007-12-12 16:21 ` Amin Azez
2007-12-12 15:36 ` Pavel Roskin
2007-12-12 16:01 ` Robert Millan
2007-12-15 10:54 ` Robert Millan
2007-12-16 4:32 ` Otavio Salvador
2007-12-16 11:03 ` Robert Millan
2007-12-16 17:21 ` Pavel Roskin
2007-12-17 7:02 ` Yoshinori K. Okuji
2007-12-17 11:11 ` Markus Elfring
2007-12-17 23:53 ` willem
2007-12-17 11:40 ` Tomáš Ebenlendr
2007-12-17 12:20 ` Markus Elfring
2007-12-17 11:58 ` Otavio Salvador
2007-12-18 0:10 ` willem
2007-12-18 1:20 ` Pavel Roskin
2007-12-18 2:04 ` Otavio Salvador
2007-12-18 2:57 ` Yoshinori K. Okuji
2007-12-18 12:05 ` Otavio Salvador
2007-12-18 18:30 ` Vesa Jääskeläinen
2007-12-18 21:32 ` Pavel Roskin
2007-12-21 17:54 ` Vesa Jääskeläinen
2007-12-19 0:11 ` Gregg C Levine
2007-12-22 8:28 ` Yoshinori K. Okuji
2007-12-22 11:16 ` Robert Millan
2007-12-23 4:58 ` Pavel Roskin
2008-01-04 17:06 ` Jeroen Dekkers
2008-01-04 17:39 ` Otavio Salvador
2007-12-18 16:29 ` Pavel Roskin
2007-12-22 8:50 ` Yoshinori K. Okuji
2007-12-22 11:20 ` Robert Millan
2007-12-22 12:28 ` Yoshinori K. Okuji
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.