public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* [ECOS] Switching to using git on eCosForge
@ 2009-09-17 10:52 Øyvind Harboe
  2009-09-17 12:41 ` Alex Schuilenburg
  0 siblings, 1 reply; 27+ messages in thread
From: Øyvind Harboe @ 2009-09-17 10:52 UTC (permalink / raw)
  To: eCos Disuss

Does anyone know a reason not to switch to git for eCosForge?

My thinking is to use http://repo.or.cz/ to host projects.

www.ecosforge.net uses a version of subversion that is getting
a bit long in the tooth (1.4) and I'm just wondering if
git isn't a better choice anyway....

The plan is to leave the current subversion repository as-is and
let migration happen  eventually, deleting old repositories(they
are still there in the history) after migration to git.

The idea is to have one git repository per eCos repository(or
project if you will).

The first project I would like to switch to git, is nios2ecos.

--
Øyvind Harboe
Embedded software and hardware consulting services
http://www.zylin.com

--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Switching to using git on eCosForge
  2009-09-17 10:52 [ECOS] Switching to using git on eCosForge Øyvind Harboe
@ 2009-09-17 12:41 ` Alex Schuilenburg
  2009-09-17 12:56   ` Øyvind Harboe
                     ` (4 more replies)
  0 siblings, 5 replies; 27+ messages in thread
From: Alex Schuilenburg @ 2009-09-17 12:41 UTC (permalink / raw)
  To: Øyvind Harboe; +Cc: eCos Disuss

Øyvind Harboe wrote on 2009-09-17 11:52:
> Does anyone know a reason not to switch to git for eCosForge?
>
> My thinking is to use http://repo.or.cz/ to host projects.
>
> www.ecosforge.net uses a version of subversion that is getting
> a bit long in the tooth (1.4) and I'm just wondering if
> git isn't a better choice anyway....
>
> The plan is to leave the current subversion repository as-is and
> let migration happen  eventually, deleting old repositories(they
> are still there in the history) after migration to git.
>
> The idea is to have one git repository per eCos repository(or
> project if you will).
>
> The first project I would like to switch to git, is nios2ecos.
>   

Why git in particular? 

We have started looking at switching to another RCS at eCosCentric as
well.  In particular I looked at three distributed RCS solutions: git,
bazaar and mercurial.  While there is no doubt that git is the most
powerful of the three solutions and also fastest on linux, it is also
the most complex of the three solutions with a very steep initial
learning curve, it's support for windows is lacking, and its
documentation is sparse and confusing.  As a tool for experienced Linux
developers, sure, git is the best choice.  But for the average eCos
developer,  I am not convinced.

The choice of an alternative RCS should also take into consideration
Windows users, as well as speed and ease of use.  When it came down to
it, I found mercurial only to be marginally slower than git, but far
better documented, easier to learn, and with much better support on
Windows platforms. Bazaar was slower than mercurial and also was not as
well documented, although Windows support was pretty much the same as
mercurial.  Both bazaar and mercurial were a lot easier to learn and
work with than git.  git's Windows support is also limited and is mostly
restricted to the 100's of cmd apps which make up git under cygwin.
Bazaar and mercurial are native windows apps, so speed comparisons
worked in their favour on Windows.

I intend to do a more formal evaluation of all three, also drawing in
user's experiences from the web, which I will be happy to write up here
when complete if people think it is worthwhile.  The topic of ecos
switching to another RCS has already been raised once before and nothing
much came of this so I am offering a proper evaluation of pros and cons
before a choice is made, for a proposal for an anoncvs alternative RCS
solution anyway.

Anyway, I should point out that all three DRCS appear to have tools that
allow for the migration and/or import/export of changesets between them,
so in theory any choice on what anyone uses in-house can be left to
personal preference regardless of what the main repository is. I cannot
speak for these tools, other than to say I have tried to import our
internal CVS repository and anoncvs into all three and not one of them
worked.  git did the worst job, followed by bazaar then mercurial. And
yes, I have tried cvs2svn to go via svn as well :-(

However, more worryingly these attempted imports showed that both our
and the anoncvs CVS respositories are corrupt, which is probably why the
imports failed so badly using the automated tools.  Any attempted
conversion of anoncvs is going to need a fair amount of effort by
someone. That said, I should point out that I am in the process of
developing/converting our own repository using a modified cvsps 2.2beta
that can fix most of the corruption in conjunction with a perl script
which fixes the rest, so may end up with a tool which correctly converts
anoncvs (i.e. preserving all check-in states, tags and history) to
whatever with little human effort.

Don't panic though, checking out current anoncvs always works.  Just do
not rely on tags and branches.  Checkouts made at the same time as tags
were made have shown several files that were missed being tagged, making
what was actually distributed differ from what was tagged, and files
missing from branches.  As an early example, checkout the
ecos-v2_0-branch just after it was made and observe that doc/Changelog
is missing, even though it was present in the trunk when the branch was
made.  This is just one case of 100's

However, I suspect your switch from svn to whatever will be fairly
simple.  The import/export tools do a fine job on most simple repositories.

HTH

-- Alex Schuilenburg

   >>>> Visit us at ESC-Boston  http://www.embedded.com/esc/boston <<<<
   >>>> Sep 22-23 on Stand 226  at Hynes Convention Center, Boston <<<<

          **** Visit us at ESC-UK  http://www.embedded.co.uk ****
          **** Oct 7-8 on Stand 433 at FIVE ISC, Farnborough ****



-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Switching to using git on eCosForge
  2009-09-17 12:41 ` Alex Schuilenburg
@ 2009-09-17 12:56   ` Øyvind Harboe
       [not found]     ` <4AB23FD3.2020808@ecoscentric.com>
  2009-09-17 14:23     ` [ECOS] " Grant Edwards
  2009-09-17 13:10   ` [ECOS] " Patrick Doyle
                     ` (3 subsequent siblings)
  4 siblings, 2 replies; 27+ messages in thread
From: Øyvind Harboe @ 2009-09-17 12:56 UTC (permalink / raw)
  To: Alex Schuilenburg; +Cc: eCos Disuss

First of all: great to hear you're looking to upgrade from CVS to
distributed development. A ~20 year leap in tools, bound to be
tricky that one :-)

> Why git in particular?

No reason not to really.

git is easy to use when cloning/downloading + web interfaces exist
where you can download snapshots.

+ git is becoming more of a required skill for embedded development
as Linux requires it, so I looked a bit at mercurial, but didn't really
feel like learning more than one of these distributed systems.. it's
been a while
that anybody suggested or wanted anything but git as an alternative
to svn in the circles I frequent. I'm sure git tools will improve with time.
We're looking 5-10 years into the future here, right?

> The choice of an alternative RCS should also take into consideration
> Windows users, as well as speed and ease of use.

Web interfaces on the server kinda take care of my greatest
concern about those that do not want or need to learn git.

They can wget + tar ...., no version control system at all involved.

Also there are nice git server sites for those that have some
pet project they are working on and want to share, e.g.
http://repo.or.cz/, which pretty much fills the role that
www.ecosforge.net has had up to now


The above said, I don't think I'll care if eCos CVS switches to
git or mercurial. Mercurial is next on my list of distributed systems
to look into and if I only did closed source development, probably
the preferred solution.


-- 
Øyvind Harboe
Embedded software and hardware consulting services
http://www.zylin.com

--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Switching to using git on eCosForge
  2009-09-17 12:41 ` Alex Schuilenburg
  2009-09-17 12:56   ` Øyvind Harboe
@ 2009-09-17 13:10   ` Patrick Doyle
  2009-09-17 14:11     ` Alex Schuilenburg
  2009-09-17 13:32   ` [ECOS] " Sergei Organov
                     ` (2 subsequent siblings)
  4 siblings, 1 reply; 27+ messages in thread
From: Patrick Doyle @ 2009-09-17 13:10 UTC (permalink / raw)
  To: Alex Schuilenburg; +Cc: Øyvind Harboe, eCos Disuss

It has been quite some time since I was last doing any eCos
development work (although I have lurked here ever since).  Since that
time I have started using git and have felt that, when next I rejoin
the eCos development community, I was going to investigate using git
with eCos.

What happened previously was that we would grab an eCos snapshot of
some vintage, develop the HAL for our custom board, and somewhat
sporadically resync to the main development tree.  I'm nowhere close
to being a git expert, but from what I've seen, this should be made
much simpler with git than it ever was with SVN.

I don't have any experience with bazaar or mecurial, but if they
support the ease of forking and resyncing branches that git supports,
then I imagine I could learn to be happy with one of those.

Your comments about the support/lack of support/ for Windows is
compelling, as I have also worked in an environment where I was the
lone Linux guy in a sea (ok, a puddle) of Windows users.  I'm
perfectly happy typing obscure strings of characters on a command
line, but have seen that I am in a minority there.

Don't know if this helps, but it's my .02 on the matter.

--wpd

Alex -- I apologize if you've gotten this twice -- gmail, qmail, and I
are not communicating well this morning :-)

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS]  Re: Switching to using git on eCosForge
  2009-09-17 12:41 ` Alex Schuilenburg
  2009-09-17 12:56   ` Øyvind Harboe
  2009-09-17 13:10   ` [ECOS] " Patrick Doyle
@ 2009-09-17 13:32   ` Sergei Organov
  2009-09-17 14:02   ` [ECOS] eCos VCS switch (was: Switching to using git on eCosForge) Daniel Néri
  2009-09-21 13:06   ` [ECOS] Re: Switching to using git on eCosForge Sergei Organov
  4 siblings, 0 replies; 27+ messages in thread
From: Sergei Organov @ 2009-09-17 13:32 UTC (permalink / raw)
  To: ecos-discuss

Alex Schuilenburg <alexs@ecoscentric.com> writes:
> Øyvind Harboe wrote on 2009-09-17 11:52:
>> Does anyone know a reason not to switch to git for eCosForge?
>>
>> My thinking is to use http://repo.or.cz/ to host projects.
>>
>> www.ecosforge.net uses a version of subversion that is getting
>> a bit long in the tooth (1.4) and I'm just wondering if
>> git isn't a better choice anyway....
>>
>> The plan is to leave the current subversion repository as-is and
>> let migration happen  eventually, deleting old repositories(they
>> are still there in the history) after migration to git.
>>
>> The idea is to have one git repository per eCos repository(or
>> project if you will).
>>
>> The first project I would like to switch to git, is nios2ecos.
>
> Why git in particular?

Because it's simply the best? ;-)

> We have started looking at switching to another RCS at eCosCentric as
> well.  In particular I looked at three distributed RCS solutions: git,
> bazaar and mercurial.  While there is no doubt that git is the most
> powerful of the three solutions and also fastest on linux, it is also
> the most complex of the three solutions with a very steep initial
> learning curve, it's support for windows is lacking, and its
> documentation is sparse and confusing.  As a tool for experienced Linux
> developers, sure, git is the best choice.  But for the average eCos
> developer,  I am not convinced.

Did you see this:

<http://code.google.com/p/msysgit/>

(I'm not Windows user, so didn't use it myself).

BTW, git has gitcvsserver:

<http://www.kernel.org/pub/software/scm/git/docs/git-cvsserver.html>

so those who are used to CVS and don't wish to learn new tool can
continue to use their favorite CVS clients.

-- Sergei.


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS]  eCos VCS switch (was: Switching to using git on eCosForge)
  2009-09-17 12:41 ` Alex Schuilenburg
                     ` (2 preceding siblings ...)
  2009-09-17 13:32   ` [ECOS] " Sergei Organov
@ 2009-09-17 14:02   ` Daniel Néri
  2009-09-21 13:06   ` [ECOS] Re: Switching to using git on eCosForge Sergei Organov
  4 siblings, 0 replies; 27+ messages in thread
From: Daniel Néri @ 2009-09-17 14:02 UTC (permalink / raw)
  To: ecos-discuss

Alex Schuilenburg <alexs@ecoscentric.com> writes:

> I cannot speak for these tools, other than to say I have tried to
> import our internal CVS repository and anoncvs into all three and not
> one of them worked. git did the worst job, followed by bazaar then
> mercurial. And yes, I have tried cvs2svn to go via svn as well :-(

I've been tracking the eCos anoncvs using Mercurial for more than 3
years. At first I was using Tailor for conversion, but I'm currently
using the bundled "convert" extension.

The main problem for me was always the somewhat strange "grafting" of
the 'net' sub-directory into 'packages' using CVS module magic. I worked
around that by converting 'net' and 'packages' into separate Mercurial
repositories which I then merge (i.e. "hg merge -f") to make my own
working repository.

A switch of the public CVS repository to Mercurial would be a major
improvement.


Best regards,
Daniel


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Switching to using git on eCosForge
       [not found]     ` <4AB23FD3.2020808@ecoscentric.com>
@ 2009-09-17 14:10       ` Øyvind Harboe
  0 siblings, 0 replies; 27+ messages in thread
From: Øyvind Harboe @ 2009-09-17 14:10 UTC (permalink / raw)
  To: Alex Schuilenburg; +Cc: eCos Disuss

> The same could be said of any of the three :-)

My situation is that I have no choice but to learn git.
Linux forced me to. eCos could force me to learn
about mercurial as well. I'm try to be economic
with the # of tools that I teach myself.

> However, for distributed development, not using proper DRSC tools, whichever
> you choose, is foolhardy IMHO.

DRSC?

> I dont think you can say mercurial (or hg for short) is better for closed
> source.

I meant to say that I found mercurial nicer & friendlier at first
glance, so if I didn't have to interact w/open source *at all*,
then mercurial looked more attractive to me. As the
case was, I was forced to learn git first.


-- 
Øyvind Harboe
Embedded software and hardware consulting services
http://www.zylin.com

--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Switching to using git on eCosForge
  2009-09-17 13:10   ` [ECOS] " Patrick Doyle
@ 2009-09-17 14:11     ` Alex Schuilenburg
  2009-09-21 14:57       ` Øyvind Harboe
  0 siblings, 1 reply; 27+ messages in thread
From: Alex Schuilenburg @ 2009-09-17 14:11 UTC (permalink / raw)
  To: Patrick Doyle; +Cc: Øyvind Harboe, eCos Disuss

Patrick Doyle wrote on 2009-09-17 14:10:
> It has been quite some time since I was last doing any eCos
> development work (although I have lurked here ever since).  Since that
> time I have started using git and have felt that, when next I rejoin
> the eCos development community, I was going to investigate using git
> with eCos.
>
> What happened previously was that we would grab an eCos snapshot of
> some vintage, develop the HAL for our custom board, and somewhat
> sporadically resync to the main development tree.  I'm nowhere close
> to being a git expert, but from what I've seen, this should be made
> much simpler with git than it ever was with SVN.
>   
I think we should stay away from SVN.  The generally accepted model
nowadays for open source development is to use a distributed revision
control system, which SVN is not.

As Øyvind said, we need to get into the 21st century.


> I don't have any experience with bazaar or mecurial, but if they
> support the ease of forking and resyncing branches that git supports,
> then I imagine I could learn to be happy with one of those.
>
> Your comments about the support/lack of support/ for Windows is
> compelling, as I have also worked in an environment where I was the
> lone Linux guy in a sea (ok, a puddle) of Windows users.  I'm
> perfectly happy typing obscure strings of characters on a command
> line, but have seen that I am in a minority there.
>
> Don't know if this helps, but it's my .02 on the matter.
>   
Thanks for the feedback.  You may be in a minority, but you are not
alone ;-)

-- Alex Schuilenburg

   >>>> Visit us at ESC-Boston  http://www.embedded.com/esc/boston <<<<
   >>>> Sep 22-23 on Stand 226  at Hynes Convention Center, Boston <<<<

          **** Visit us at ESC-UK  http://www.embedded.co.uk ****
          **** Oct 7-8 on Stand 433 at FIVE ISC, Farnborough ****



-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS]  Re: Switching to using git on eCosForge
  2009-09-17 12:56   ` Øyvind Harboe
       [not found]     ` <4AB23FD3.2020808@ecoscentric.com>
@ 2009-09-17 14:23     ` Grant Edwards
  2009-09-17 14:37       ` Ross Younger
  2009-09-17 14:46       ` Patrick Doyle
  1 sibling, 2 replies; 27+ messages in thread
From: Grant Edwards @ 2009-09-17 14:23 UTC (permalink / raw)
  To: ecos-discuss

On 2009-09-17, ??yvind Harboe <oyvind.harboe@zylin.com> wrote:

> + git is becoming more of a required skill for embedded development
> as Linux requires it,

Can you explain how "Linux requires it"?  I've been using Linux
for almost 15 years now (including some embedded Linux stuff),
and have no clue how to use git.

-- 
Grant Edwards                   grante             Yow! Now KEN and BARBIE
                                  at               are PERMANENTLY ADDICTED to
                               visi.com            MIND-ALTERING DRUGS ...


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS]  Re: Switching to using git on eCosForge
  2009-09-17 14:23     ` [ECOS] " Grant Edwards
@ 2009-09-17 14:37       ` Ross Younger
  2009-09-17 14:46       ` Patrick Doyle
  1 sibling, 0 replies; 27+ messages in thread
From: Ross Younger @ 2009-09-17 14:37 UTC (permalink / raw)
  To: Grant Edwards; +Cc: ecos-discuss

> On 2009-09-17, ??yvind Harboe <oyvind.harboe@zylin.com> wrote:
>> + git is becoming more of a required skill for embedded development
>> as Linux requires it,

Grant Edwards wrote:
> Can you explain how "Linux requires it"?  

The Linux kernel source tree has been managed with git - pretty exclusively,
I think - for a handful of years now. It really comes into its own with the
various teams working on their own subtrees.

Torvalds himself designed and wrote the initial version of git following the
BitKeeper debacle and given the then-current state of the art; it has then
evolved into a fully-featured DRCS, but with a slightly different world-view
to hg and bzr.


Ross

-- 
Embedded Software Engineer, eCosCentric Limited.
Barnwell House, Barnwell Drive, Cambridge CB5 8UU, UK.
Registered in England no. 4422071.                  www.ecoscentric.com

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Re: Switching to using git on eCosForge
  2009-09-17 14:23     ` [ECOS] " Grant Edwards
  2009-09-17 14:37       ` Ross Younger
@ 2009-09-17 14:46       ` Patrick Doyle
  1 sibling, 0 replies; 27+ messages in thread
From: Patrick Doyle @ 2009-09-17 14:46 UTC (permalink / raw)
  To: Grant Edwards; +Cc: ecos-discuss

On Thu, Sep 17, 2009 at 10:23 AM, Grant Edwards
<grant.b.edwards@gmail.com> wrote:
> On 2009-09-17, ??yvind Harboe <oyvind.harboe@zylin.com> wrote:
>> + git is becoming more of a required skill for embedded development
>> as Linux requires it,
>
> Can you explain how "Linux requires it"?  I've been using Linux
> for almost 15 years now (including some embedded Linux stuff),
> and have no clue how to use git.


Why it's quite simple, actually...

Linus Torvalds invented Linux.

Linus Torvalds invented git.

Therefore, git == Linux

:-)

--wpd

--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS]  Re: Switching to using git on eCosForge
  2009-09-17 12:41 ` Alex Schuilenburg
                     ` (3 preceding siblings ...)
  2009-09-17 14:02   ` [ECOS] eCos VCS switch (was: Switching to using git on eCosForge) Daniel Néri
@ 2009-09-21 13:06   ` Sergei Organov
  2009-09-21 13:55     ` Sergei Gavrikov
  4 siblings, 1 reply; 27+ messages in thread
From: Sergei Organov @ 2009-09-21 13:06 UTC (permalink / raw)
  To: ecos-discuss

Alex Schuilenburg <alexs@ecoscentric.com> writes:

[...]

> Both bazaar and mercurial were a lot easier to learn and work with
> than git. git's Windows support is also limited and is mostly
> restricted to the 100's of cmd apps which make up git under cygwin.

Once again, I'm not a Windows user, but is this really true nowadays?

E.g., what about this one:

<http://code.google.com/p/tortoisegit/>

Isn't it good enough for Windows users?

-- Sergei.


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS]  Re: Switching to using git on eCosForge
  2009-09-21 13:06   ` [ECOS] Re: Switching to using git on eCosForge Sergei Organov
@ 2009-09-21 13:55     ` Sergei Gavrikov
  2009-09-21 14:11       ` Sergei Organov
  0 siblings, 1 reply; 27+ messages in thread
From: Sergei Gavrikov @ 2009-09-21 13:55 UTC (permalink / raw)
  To: Sergei Organov; +Cc: ecos-discuss

On Mon, Sep 21, 2009 at 05:05:20PM +0400, Sergei Organov wrote:
> Alex Schuilenburg <alexs@ecoscentric.com> writes:
> 
> [...]
> 
> > Both bazaar and mercurial were a lot easier to learn and work with
> > than git. git's Windows support is also limited and is mostly
> > restricted to the 100's of cmd apps which make up git under cygwin.
> 
> Once again, I'm not a Windows user, but is this really true nowadays?
> 
> E.g., what about this one:
> 
> <http://code.google.com/p/tortoisegit/>
> 
> Isn't it good enough for Windows users?
 
There are many tortoises there: Tortoise{SVN,Hg,Bzr,Git,...}

http://bitbucket.org/tortoisehg/stable/wiki/Home
http://bazaar-vcs.org/TortoiseBzr

In any case they won't use PowerShell :-)

Sergei

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS]  Re: Switching to using git on eCosForge
  2009-09-21 13:55     ` Sergei Gavrikov
@ 2009-09-21 14:11       ` Sergei Organov
  0 siblings, 0 replies; 27+ messages in thread
From: Sergei Organov @ 2009-09-21 14:11 UTC (permalink / raw)
  To: ecos-discuss

Sergei Gavrikov <sergei.gavrikov@gmail.com> writes:

> On Mon, Sep 21, 2009 at 05:05:20PM +0400, Sergei Organov wrote:
>> Alex Schuilenburg <alexs@ecoscentric.com> writes:
>> 
>> [...]
>> 
>> > Both bazaar and mercurial were a lot easier to learn and work with
>> > than git. git's Windows support is also limited and is mostly
>> > restricted to the 100's of cmd apps which make up git under cygwin.
>> 
>> Once again, I'm not a Windows user, but is this really true nowadays?
>> 
>> E.g., what about this one:
>> 
>> <http://code.google.com/p/tortoisegit/>
>> 
>> Isn't it good enough for Windows users?
>  
> There are many tortoises there: Tortoise{SVN,Hg,Bzr,Git,...}

Yeah, that was my argument: all of them probably have roughly the same
functionality. Isn't it what Windows users actually use? If they do,
then git should be not worse than others in this area.

-- Sergei.


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Switching to using git on eCosForge
  2009-09-17 14:11     ` Alex Schuilenburg
@ 2009-09-21 14:57       ` Øyvind Harboe
  0 siblings, 0 replies; 27+ messages in thread
From: Øyvind Harboe @ 2009-09-21 14:57 UTC (permalink / raw)
  To: Alex Schuilenburg; +Cc: eCos Disuss

Using DRCS's doesn't make development distributed.

It's perfectly possible to use e.g. git in a non-distributed fashion.

> I think we should stay away from SVN.  The generally accepted model
> nowadays for open source development is to use a distributed revision
> control system, which SVN is not.

Well... there is a slight twist to that one.

Some use git(and I guess hg too) as a client to svn.

It works quite well.

eCos isn't handled in a distributed fashion today, e.g. with
each maintainer and all the contributers having their
own repository that things are pulled from. In that
regard svn + git clients might work well.

Perhaps eCos should switch to a more distributed model
though.


-- 
Øyvind Harboe
Embedded software and hardware consulting services
http://www.zylin.com

--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Re: Switching to using git on eCosForge
  2009-09-22 11:41           ` Edgar Grimberg
@ 2009-09-22 17:29             ` Ilija Kocho
  0 siblings, 0 replies; 27+ messages in thread
From: Ilija Kocho @ 2009-09-22 17:29 UTC (permalink / raw)
  To: ecos-discuss

Edgar Grimberg wrote:
> Hi,
>
> My 2 cents on the topic:
>   
and another one from me
> * no matter what source control to use, it is a must to be easy for
> the maintainers to use it. The regular users will be able, with a
> command described somewhere on the web, to get all the sources.
I agree with this. Maintainers' time is valuable to all of us.

I have no preference over any of the 3 options, but I can note that 
almost all discussion is between git and hg, so as a fist step we can 
narrow choice between these two. Then, when emergency comes, we can 
throw a coin instead of dice.

Regards
Ilija


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS]  Re: Switching to using git on eCosForge
  2009-09-21 22:41   ` Alex Schuilenburg
  2009-09-22  9:55     ` Peter Korsgaard
@ 2009-09-22 12:21     ` Sergei Organov
  1 sibling, 0 replies; 27+ messages in thread
From: Sergei Organov @ 2009-09-22 12:21 UTC (permalink / raw)
  To: ecos-discuss

Alex Schuilenburg <alexs@ecoscentric.com> writes:

> Sergei Organov wrote:
>> Alex Schuilenburg <alexs@ecoscentric.com> writes:
>> [...]

[...]

> However, I would point out again that all three borrow from the others,
> so evaluating is always going to be a moving target.

>>> You really don't want to force new users on an additional learning
>>> curve. There are 100's of commands to remember, whereas both bzr and
>>> hg have one.
>>
>> Come on! Which one? 'hg' and 'bzr'??? Then git surprisingly has only
>> one as well: 'git' ;-)
>>
>> One does need additional learning curve switching from CVS to any of
>> DVCS'es, and all of them have *-for-CVS-users-manual ;-) And once again,
>> with git you can have gitcvsserver running to keep "CVS forever"
>> users happy with their favorite clients.
>>   
> % ls -l /usr/bin/git-* | wc -l
> 136
> %
>
> and I only have git-core installed on that machine...

You shouldn't be running them directly, and anyway now it is already
addressed:

$ git --version
git version 1.6.4.2.254.g99ccf
$ which git
~/git/bin/git
$ ls ~/git/bin
git            git-receive-pack  git-upload-archive  gitk
git-cvsserver  git-shell         git-upload-pack
$ 

Most of the 'git-*'  are now hidden in an out-of-your-path directory.

What I actually wanted to point out is that it was unfair to say that
git has hundreds of commands to remember whereas both bzr and hg have
one. The fact that one was allowed to say 'git-COMMAND' instead of 'git
COMMAND' does not in fact make number of commands different. I suspect
one needs to remember roughly the same amount of commands to perform
similar operations no matter which DVCS of the above is in use.

[...]

>>> Also, while documentation is improving (http://book.git-scm.com/), it is
>>> not as good or complete as mercurial (http://hgbook.red-bean.com/read/)
>>> in terms of non-power users.  Both have books in print available from
>>> places like Amazon.
>>>     
>>
>> For me git's documentation was more than enough to have a quick-start.
>>   
>>> For example, I started my evaluation with bzr, then hg then git. bzr and
>>> hg were a lot easiest to pick up and start using than git.
>>>     
>>
>> I wonder, do you remember what the problem(s) with git was (were)? Care
>> to give an example where git is harder than any of the other two?
>>   
> I never said I had problems doing things in git - I said I had problems
> finding out how to do them. Tell me with a straight face that the number
> of options in some of the git commands did not overwhelm you the first
> time you saw them?

Well, no they did not, as I've already seen tar and diff manpages before
git. BTW, cvs diff has about 60 options and nobody cares.

IMHO, it's git's explicit staging area (aka index, aka cache) that makes
it different from others and maybe somewhat harder to get used to.
Selecting what to commit and actually committing are made to be two
separate actions. If it's worth additional complexity... I don't know.
However, it's not that difficult concept as it's semantically similar to
what one does in a GUI when selecting files to be included into the next
commit, then pushing the commit button.

> When you want to encourage community development, you really need to
> keep it simple for developers to keep abreast of advances and contribute
> back. Not have so many bells and whistles that they feel like they
> should not touch anything in case it breaks, or worse, have someone who
> thinks they know what they are doing but does not.

I just wanted to point out that git is not that hard to use that anybody
looking at it the first time should run away screaming! :-)

[...]

> Not entirely wrong ;-) When working with branches ever run "git
> submodule update" when you've made and committed changes within a
> submodule without checking out the branch first, only to discover
> later that the changes were silently overwritten?

No, I didn't, I didn't try to play with git submodules yet. However, I
doubt the data are actually lost if they were committed to the
submodule, really. One must be rather proficient in git to force it to
loose some data, but then he already knows what he is doing.

[...]

> However, I strongly disagree with your comment "hg already outlived its
> initial simple design..." though.  hg's design is just as simple as git
> and there is nothing in hg's design IMHO that limits what it can do. It
> is still evolving, just like git and eCos. The forests extension has
> been around just as long as sub-modules AFAIKT, but I admit it is taking
> a while for hg to make it part of their core functionality.

To be fair, I think the submodules in git are also rather unpolished
yet, as you've already got a chance to figure out.

And you are definitely right all these comparisons are moving target.

-- Sergei.

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS]  Re: Switching to using git on eCosForge
  2009-09-22 11:21         ` Sergei Gavrikov
  2009-09-22 11:41           ` Edgar Grimberg
@ 2009-09-22 11:52           ` Alex Schuilenburg
  1 sibling, 0 replies; 27+ messages in thread
From: Alex Schuilenburg @ 2009-09-22 11:52 UTC (permalink / raw)
  To: Sergei Gavrikov; +Cc: ecos-discuss

Sergei Gavrikov wrote on 2009-09-22 12:24:
> [...]
> and what do you think about Easy Git? Would you like observe these,
> please?
>
> http://www.gnome.org/~newren/eg/
> http://www.gnome.org/~newren/eg/documentation/
>
>   
Looks great and certainly helps simplify things.

It's perl, so should run on most systems, but how well does it really
run on Windows (cygwin or native perl) ;-)

/me ducks and runs

-- Alex Schuilenburg

   >>>> Visit us at ESC-Boston  http://www.embedded.com/esc/boston <<<<
   >>>> Sep 22-23 on Stand 226  at Hynes Convention Center, Boston <<<<

       >>>> Visit us at ESC-UK  http://www.embedded.co.uk <<<<
       >>>> Oct 7-8 on Stand 433 at FIVE ISC, Farnborough <<<<


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Re: Switching to using git on eCosForge
  2009-09-22 11:21         ` Sergei Gavrikov
@ 2009-09-22 11:41           ` Edgar Grimberg
  2009-09-22 17:29             ` Ilija Kocho
  2009-09-22 11:52           ` Alex Schuilenburg
  1 sibling, 1 reply; 27+ messages in thread
From: Edgar Grimberg @ 2009-09-22 11:41 UTC (permalink / raw)
  To: Sergei Gavrikov; +Cc: Alex Schuilenburg, Peter Korsgaard, ecos-discuss

Hi,

My 2 cents on the topic:

* eCos maintainers need to follow up on patches and bugs. The kernel
and other "common" areas should have priority over specific HALs. This
is a place where things must go without any hiccups. I've been around
the office when Oyvind found the sscanf bug. Imagine the frustration
finding a 2 years old patch just rotting out there... Maybe a clear
procedure must be written and published. Something like in the
emergency rooms: sever bugs - one day to commit, normal bugs in common
areas - 3 days to commit, normal bugs in HAL - 7 days to commit, silly
problems - 14 days to commit.
* no matter what source control to use, it is a must to be easy for
the maintainers to use it. The regular users will be able, with a
command described somewhere on the web, to get all the sources. The
"super-"users to send patches will able to find a way to do so no
matter what source control system will be chosen (also a command or
two on the webpages can help a lot in that regard).

Regards,
Edgar

-- 
Edgar Grimberg
System Developer
Zylin AS
ZY1000 JTAG Debugger http://www.zylin.com/zy1000.html
Phone: (+47) 51 63 25 00

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS]  Re: Switching to using git on eCosForge
  2009-09-22 11:08       ` Alex Schuilenburg
  2009-09-22 11:21         ` Sergei Gavrikov
@ 2009-09-22 11:38         ` Peter Korsgaard
  1 sibling, 0 replies; 27+ messages in thread
From: Peter Korsgaard @ 2009-09-22 11:38 UTC (permalink / raw)
  To: ecos-discuss

>>>>> "AS" == Alex Schuilenburg <alexs@ecoscentric.com> writes:

Hi,

AS> Ah, for 1.6.x you mean
AS> # ls -l /usr/libexec/git-core | wc -l
AS> 132
AS> # ls -l /usr/bin/git* | wc -l
AS>  4
AS> #

AS> You can run but you cannot hide ;-)

But that's an implementation detail. I as a user don't care if the
various git subcommands are implemented in seperate binaries or a
single multi-function binary.

Again, the working set (E.G. common commands) are pretty similar:

svn help|wc -l
47

git help|wc -l
26

hg help|wc -l
67

-- 
Bye, Peter Korsgaard


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS]  Re: Switching to using git on eCosForge
  2009-09-22 11:08       ` Alex Schuilenburg
@ 2009-09-22 11:21         ` Sergei Gavrikov
  2009-09-22 11:41           ` Edgar Grimberg
  2009-09-22 11:52           ` Alex Schuilenburg
  2009-09-22 11:38         ` Peter Korsgaard
  1 sibling, 2 replies; 27+ messages in thread
From: Sergei Gavrikov @ 2009-09-22 11:21 UTC (permalink / raw)
  To: Alex Schuilenburg; +Cc: Peter Korsgaard, ecos-discuss

On Tue, Sep 22, 2009 at 12:08:17PM +0100, Alex Schuilenburg wrote:
> Peter Korsgaard wrote on 2009-09-22 10:55:
> >>>>>> "AS" == Alex Schuilenburg <alexs@ecoscentric.com> writes:
> >>>>>>             
> >
> > Hi,
> >
> > AS> % ls -l /usr/bin/git-* | wc -l
> > AS> 136
> > AS> %
> >
> > That hasn't been the situation since git 1.6.0, released 13 months
> > ago. When evaluating something as fast moving as DVCS'es, please use
> > the latest stable release of the tools.
> >   
> Ah, for 1.6.x you mean
> # ls -l /usr/libexec/git-core | wc -l
> 132
> # ls -l /usr/bin/git* | wc -l
>  4
> #
> 
> You can run but you cannot hide ;-)

Ah, that's poor-poor busybox :-)

and what do you think about Easy Git? Would you like observe these,
please?

http://www.gnome.org/~newren/eg/
http://www.gnome.org/~newren/eg/documentation/

Sergei

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS]  Re: Switching to using git on eCosForge
  2009-09-22  9:55     ` Peter Korsgaard
@ 2009-09-22 11:08       ` Alex Schuilenburg
  2009-09-22 11:21         ` Sergei Gavrikov
  2009-09-22 11:38         ` Peter Korsgaard
  0 siblings, 2 replies; 27+ messages in thread
From: Alex Schuilenburg @ 2009-09-22 11:08 UTC (permalink / raw)
  To: Peter Korsgaard; +Cc: ecos-discuss

Peter Korsgaard wrote on 2009-09-22 10:55:
>>>>>> "AS" == Alex Schuilenburg <alexs@ecoscentric.com> writes:
>>>>>>             
>
> Hi,
>
> AS> % ls -l /usr/bin/git-* | wc -l
> AS> 136
> AS> %
>
> That hasn't been the situation since git 1.6.0, released 13 months
> ago. When evaluating something as fast moving as DVCS'es, please use
> the latest stable release of the tools.
>   
Ah, for 1.6.x you mean
# ls -l /usr/libexec/git-core | wc -l
132
# ls -l /usr/bin/git* | wc -l
 4
#

You can run but you cannot hide ;-)

I think if we are going to switch sooner rather than later you need to
evaluate what is available pre-packaged from whatever distro or OS
provider.  i.e. what the regular users are going to be able to access
easily without having to upgrade their system or build the tools
themselves.

Don't get me wrong, git is great and all empowering.  But IMHO that is
the problem - there is enough rope to hang yourself.  For example,
consider the following subtlety:
"If you are staging an updated submodule for commit manually, be careful
to not add a trailing slash when specifying the path. With the slash
appended, Git will assume you are removing the submodule and checking
that directory's contents into the containing repository."

A trailing slash is what my bash completion puts in my path and is
likely to be *my* default behaviour.  IMHO that is broken, but I am sure
someone in git-land thinks it makes perfect sense and is perfectly
acceptable behaviour.  If I was a git expert, maybe I would too.  But
the average Joe is not and not likely to want to be one.

We are not talking here what is the most superior DRCS, we are talking
what is the most suitable for eCos.  You don't need a 10lb hammer to
crack a nut.

-- Alex Schuilenburg

   >>>> Visit us at ESC-Boston  http://www.embedded.com/esc/boston <<<<
   >>>> Sep 22-23 on Stand 226  at Hynes Convention Center, Boston <<<<

       >>>> Visit us at ESC-UK  http://www.embedded.co.uk <<<<
       >>>> Oct 7-8 on Stand 433 at FIVE ISC, Farnborough <<<<


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS]  Re: Switching to using git on eCosForge
  2009-09-21 22:41   ` Alex Schuilenburg
@ 2009-09-22  9:55     ` Peter Korsgaard
  2009-09-22 11:08       ` Alex Schuilenburg
  2009-09-22 12:21     ` Sergei Organov
  1 sibling, 1 reply; 27+ messages in thread
From: Peter Korsgaard @ 2009-09-22  9:55 UTC (permalink / raw)
  To: ecos-discuss

>>>>> "AS" == Alex Schuilenburg <alexs@ecoscentric.com> writes:

Hi,

AS> % ls -l /usr/bin/git-* | wc -l
AS> 136
AS> %

That hasn't been the situation since git 1.6.0, released 13 months
ago. When evaluating something as fast moving as DVCS'es, please use
the latest stable release of the tools.

-- 
Bye, Peter Korsgaard


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS]  Re: Switching to using git on eCosForge
  2009-09-21 20:06 ` Sergei Organov
@ 2009-09-21 22:41   ` Alex Schuilenburg
  2009-09-22  9:55     ` Peter Korsgaard
  2009-09-22 12:21     ` Sergei Organov
  0 siblings, 2 replies; 27+ messages in thread
From: Alex Schuilenburg @ 2009-09-21 22:41 UTC (permalink / raw)
  To: Sergei Organov; +Cc: ecos-discuss

Sergei Organov wrote:
> Alex Schuilenburg <alexs@ecoscentric.com> writes:
> [...]
>   
>> My main argument against git is it has a very steep initial learning
>> curve,
>>     
> Really? Not in my experience. 
Yes, really, and not only my experience either. I guess I must be below
the curve on learning new technology, but then it could also be my age ;-)


> IMHO, those 3 we discuss are roughly the
> same, just having raw corners in different places. E.g., there is even a
> table of commands equivalence between hg and git somewhere.
>   
Several places actually.  And yes, functionality on each is roughly the
same.

>   
>> and from experience you can hang yourself if you do not know what
>> you are doing.  (Yes, there are rollbacks, etc, but sometimes it is a
>> while down the line before you realise you did something wrong).
>>     
>
> It's a very nice thing with git that it's virtually impossible to loose
> your work as soon as you committed it to git, really, even if you keep
> doing something wrong. Even though nowadays git does automatically run
> garbage collection, the reflog feature still keeps all unreferenced data
> intact for rather long time.
>
>   
And yes, functionality on each is roughly the same.  I think we should
stop going round in circles.  We appear to agree all three have similar
functionality. If you want a contest on which is the most powerful, I
will save you the trouble. git is currently the most powerful.  If you
want an example of a powerful feature git has that is harder to do in
the others, let me save you the trouble again: git commit --amend (in hg
if the commit is buried you will need to have been using queues and will
have to export changesets, fix and re-import - more painful, but
achievable). 

However, I would point out again that all three borrow from the others,
so evaluating is always going to be a moving target.
>> You really don't want to force new users on an additional learning
>> curve. There are 100's of commands to remember, whereas both bzr and
>> hg have one.
>>     
>
> Come on! Which one? 'hg' and 'bzr'??? Then git surprisingly has only
> one as well: 'git' ;-)
>
> One does need additional learning curve switching from CVS to any of
> DVCS'es, and all of them have *-for-CVS-users-manual ;-) And once again,
> with git you can have gitcvsserver running to keep "CVS forever"
> users happy with their favorite clients.
>   
% ls -l /usr/bin/git-* | wc -l
136
%

and I only have git-core installed on that machine...

FWIW I already had come upto speed with DRCS with bzr and hg before I
played with git. Figuring out which command to use to do a specific task
without resorting to a manual was my initial stumbling block - I just
initially felt somewhat overwhelmed.  bzr and hg seemed easier to pick
up and start using where with git I was never quite sure if I was using
the correct options.  Too many bells and whistles I guess which was
compounded by not easily being able to find pointers to assure me I was
doing the right thing. Hence I never quite felt comfortable using git in
the beginning.  But of course this is a subjective opinion - YMMV.


>> Also, while documentation is improving (http://book.git-scm.com/), it is
>> not as good or complete as mercurial (http://hgbook.red-bean.com/read/)
>> in terms of non-power users.  Both have books in print available from
>> places like Amazon.
>>     
>
> For me git's documentation was more than enough to have a quick-start.
>
>   
>> For example, I started my evaluation with bzr, then hg then git. bzr and
>> hg were a lot easiest to pick up and start using than git.
>>     
>
> I wonder, do you remember what the problem(s) with git was (were)? Care
> to give an example where git is harder than any of the other two?
>   
I never said I had problems doing things in git - I said I had problems
finding out how to do them. Tell me with a straight face that the number
of options in some of the git commands did not overwhelm you the first
time you saw them?

When you want to encourage community development, you really need to
keep it simple for developers to keep abreast of advances and contribute
back. Not have so many bells and whistles that they feel like they
should not touch anything in case it breaks, or worse, have someone who
thinks they know what they are doing but does not.

>   
>> I also have done most of my eval on Linux, dropping back to Windows to
>> see how easy it was to use and integrate graphical diff tools, etc.
>>
>> For other comparisons see:
>> http://code.google.com/p/support/wiki/DVCSAnalysis
>> http://www.rockstarprogrammer.org/post/2008/apr/06/differences-between-mercurial-and-git/
>> http://importantshock.wordpress.com/2008/08/07/git-vs-mercurial/
>> http://stackoverflow.com/questions/1450348/git-equivalents-of-most-common-mercurial-commands
>> http://rg03.wordpress.com/2009/04/07/mercurial-vs-git/
>> http://www.diffen.com/difference/Git_%28software%29_vs_Mercurial_%28software%29
>> ...
>>
>> but bear in mind that arguments against either git or hg may have
>> disappeared with more recent versions.  You really need to try both...
>>     
>
> Yes, all 3 are improving and do borrow from each other. However, in my
> opinion, git is preferred in the long run as it has very clear, simple
> yet powerful model in its core, when hg already outlived its initial
> simple design model based on "every branch is a separate repository"
> idea (now it has 3(!) different kinds of branches), and bzr is being
> built from use-cases down (see how many times they have already changed
> format of repository). Yes, sure, me could be entirely wrong ;-)
>   
Not entirely wrong ;-)   When working with branches ever run "git
submodule update" when you've made and committed changes within a
submodule without checking out the branch first, only to discover later
that the changes were silently overwritten?

However, I strongly disagree with your comment "hg already outlived its
initial simple design..." though.  hg's design is just as simple as git
and there is nothing in hg's design IMHO that limits what it can do. It
is still evolving, just like git and eCos. The forests extension has
been around just as long as sub-modules AFAIKT, but I admit it is taking
a while for hg to make it part of their core functionality.

I am sure we can equally find flaws in the others preferred DRCS just as
we can find features...   

And defintely yes, all three borrow from each other, even documentation
in the case of git ;-)  http://cworth.org/hgbook-git/tour/).  But IMHO
hg still has stronger documentation and is easier for newcomers to start
with.

Anyway, it is good to have an alternative view on what the best choice
of DRCS for eCos is.  I guess you and I can agree to disagree on what
that choice should be though, and let others tell us what they think ;-)

-- Alex Schuilenburg

   >>>> Visit us at ESC-Boston  http://www.embedded.com/esc/boston <<<<
   >>>> Sep 22-23 on Stand 226  at Hynes Convention Center, Boston <<<<

       >>>> Visit us at ESC-UK  http://www.embedded.co.uk <<<<
       >>>> Oct 7-8 on Stand 433 at FIVE ISC, Farnborough <<<<


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [ECOS] Re: Switching to using git on eCosForge
  2009-09-21 14:39 Alex Schuilenburg
  2009-09-21 20:06 ` Sergei Organov
@ 2009-09-21 22:08 ` Sergei Gavrikov
  1 sibling, 0 replies; 27+ messages in thread
From: Sergei Gavrikov @ 2009-09-21 22:08 UTC (permalink / raw)
  To: Alex Schuilenburg; +Cc: eCos Disuss

On Mon, Sep 21, 2009 at 03:39:09PM +0100, Alex Schuilenburg wrote:
> [Apologies to sergei for repost - grrr]
> 
> Sergei Organov wrote on 2009-09-21 14:05:
> > Alex Schuilenburg <alexs@ecoscentric.com> writes:
> >
> > [...]
> >
> >   
> >> Both bazaar and mercurial were a lot easier to learn and work with
> >> than git. git's Windows support is also limited and is mostly
> >> restricted to the 100's of cmd apps which make up git under cygwin.
> >>     
> >
> > Once again, I'm not a Windows user, but is this really true nowadays?
> >
> > E.g., what about this one:
> >
> > <http://code.google.com/p/tortoisegit/>
> >
> > Isn't it good enough for Windows users?
> >   
> and hg has TortoiseHG <http://tortoisehg.sourceforge.net/>
> (http://tortoisehg.sourceforge.net/).  Like I said, feature comparison
> between git and hg is pretty much on a par...
> 
> Lack of windows support/integration is not my main argument against git
> FWIW.
> 
> My main argument against git is it has a very steep initial learning
> curve, and from experience you can hang yourself if you do not know what
> you are doing.  (Yes, there are rollbacks, etc, but sometimes it is a
> while down the line before you realise you did something wrong). You
> really don't want to force new users on an additional learning curve. 
> There are 100's of commands to remember, whereas both bzr and hg have one.
  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Excuse, please, my thougths the below. Any *nix CLI environment has
something like the above :-) BUT, with those 100's {text,file}utils
someone is able to do everything (even make world), but, today, *nix
does not make him/her use those 100's. If somebody wants, he/she may
use only `cp' and `mv' + $EDITOR, like `Explorer' + ... well, lets
that will be `Notepad' to make things spin, if he/she wants, they can
use only IDE likes Eclipse to do everything like it he/she did in
Visual Studio.  The most modern IDEs have all VCS modules/plugins,
e.g. Komodo (Git, CVS, Perforce, Bazaar, Mercurial, etc.) and, BTW,
Eclipse has Git plugin, etc.  I'm not Git user, but I think it is
possible to overlap those 100's by N*100 clicks in IDE, if anyone
wants that, they do it for them! I do not belive that maintainers will
suggest then, Use IDE 'A' and do not use IDE 'B' for development with
eCos.

Just now I entered in search box 'CVS refcard', I download it and open
the card. 100's commands? No, there are not. It seems there are a lot
of options. How many CVS options we use(d) every day? I think what
_any_ VC's (git is not exception) _every_day_in_use_ refcard will be
that A4 sheet or half it. Thin things for CLI fans, so, they may `make
world', IMO, others use A4 sheet and it will be enougth, it seems for
me those IDEs implement (A4 on both sides) in GUI and that's enough.

A thougth what Git == 100's CLI is the same myth likes *nix is life
with ksh.

Another issue. Do you really expect to find in a future any
assistances here with _any_ VCS+GUI like the below, for example:

- What IDE do you use?
- Bla-bla-bla
- Hm, that does not like any Tortoise. Test a moment, please... Well,
  Click there, expand that node, turn on that switch, then click [Ok]
- What dialog are you seeing now?
- ...

I guess that this will be type then in the list, e.g., invoke

$ {git,hg,bzr,svn} [option] <command>

or

read, please, for start: ecos.sourceware.org/anyvcs.html and follow
the ref links there for a far reading.

Why I think so? It's the real world. I did not meet here a lot
assistance with configtool, for example, (BTW, CT is official GUI
configuration tool for eCos), n.b. just get the suggests here to
import some CDL options with ecosconfig. This is the real world.

It seems for me that we try to decrease troubles for windows users
because they have it enough, but, unfortunately, they is/will be in
trouble with 10's CLI commands (hg, bzr) as well as with the 100's
CLI commands (git). Of course, if they will be use CLI and not any
Tortoise*. I say 'trouble' == 'remember' :-)

> Also, while documentation is improving (http://book.git-scm.com/), it is
> not as good or complete as mercurial (http://hgbook.red-bean.com/read/)
> in terms of non-power users.  Both have books in print available from
> places like Amazon.
> For example, I started my evaluation with bzr, then hg then git. bzr and
> hg were a lot easiest to pick up and start using than git.  I also have
> done most of my eval on Linux, dropping back to Windows to see how easy
> it was to use and integrate graphical diff tools, etc.

Today I'm mercurial user (my way was from lanchpad (bzr) to bitbucket
(hg), but I have not tried github yet :-) and it was happy that I'm
CLI user. In those days when I read Bryan O'Sullivan HG book I
observed a lot of examples like the below

echo a>a
echo b>b
hg ci -A -m 'add a,b'
echo c>>a
hg diff

AFAIR, HG book in those days was 99.9% of CLI examples. It seems I
must re-read new revision... What a nice thing to get $40.00 from
every reader which could only see in his prev life:

C:\>

Unfortunately, in fact, it is not possible to give a full power for
windows users without CLI, even with very friendly VCS, because, even
eCos on Windows, in fact, it is CLI (Cygwin + GNU). In any case, then
windows users hear here new words: objcopy, readelf, strip, size, etc.
very often. So, what world will be added then (git, hg, bzr), it's no
matter.

Sergei

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS]  Re: Switching to using git on eCosForge
  2009-09-21 14:39 Alex Schuilenburg
@ 2009-09-21 20:06 ` Sergei Organov
  2009-09-21 22:41   ` Alex Schuilenburg
  2009-09-21 22:08 ` Sergei Gavrikov
  1 sibling, 1 reply; 27+ messages in thread
From: Sergei Organov @ 2009-09-21 20:06 UTC (permalink / raw)
  To: ecos-discuss

Alex Schuilenburg <alexs@ecoscentric.com> writes:
[...]

> My main argument against git is it has a very steep initial learning
> curve,

Really? Not in my experience. IMHO, those 3 we discuss are roughly the
same, just having raw corners in different places. E.g., there is even a
table of commands equivalence between hg and git somewhere.

> and from experience you can hang yourself if you do not know what
> you are doing.  (Yes, there are rollbacks, etc, but sometimes it is a
> while down the line before you realise you did something wrong).

It's a very nice thing with git that it's virtually impossible to loose
your work as soon as you committed it to git, really, even if you keep
doing something wrong. Even though nowadays git does automatically run
garbage collection, the reflog feature still keeps all unreferenced data
intact for rather long time.

> You really don't want to force new users on an additional learning
> curve. There are 100's of commands to remember, whereas both bzr and
> hg have one.

Come on! Which one? 'hg' and 'bzr'??? Then git surprisingly has only
one as well: 'git' ;-)

One does need additional learning curve switching from CVS to any of
DVCS'es, and all of them have *-for-CVS-users-manual ;-) And once again,
with git you can have gitcvsserver running to keep "CVS forever"
users happy with their favorite clients.

> Also, while documentation is improving (http://book.git-scm.com/), it is
> not as good or complete as mercurial (http://hgbook.red-bean.com/read/)
> in terms of non-power users.  Both have books in print available from
> places like Amazon.

For me git's documentation was more than enough to have a quick-start.

>
> For example, I started my evaluation with bzr, then hg then git. bzr and
> hg were a lot easiest to pick up and start using than git.

I wonder, do you remember what the problem(s) with git was (were)? Care
to give an example where git is harder than any of the other two?

> I also have done most of my eval on Linux, dropping back to Windows to
> see how easy it was to use and integrate graphical diff tools, etc.
>
> For other comparisons see:
> http://code.google.com/p/support/wiki/DVCSAnalysis
> http://www.rockstarprogrammer.org/post/2008/apr/06/differences-between-mercurial-and-git/
> http://importantshock.wordpress.com/2008/08/07/git-vs-mercurial/
> http://stackoverflow.com/questions/1450348/git-equivalents-of-most-common-mercurial-commands
> http://rg03.wordpress.com/2009/04/07/mercurial-vs-git/
> http://www.diffen.com/difference/Git_%28software%29_vs_Mercurial_%28software%29
> ...
>
> but bear in mind that arguments against either git or hg may have
> disappeared with more recent versions.  You really need to try both...

Yes, all 3 are improving and do borrow from each other. However, in my
opinion, git is preferred in the long run as it has very clear, simple
yet powerful model in its core, when hg already outlived its initial
simple design model based on "every branch is a separate repository"
idea (now it has 3(!) different kinds of branches), and bzr is being
built from use-cases down (see how many times they have already changed
format of repository). Yes, sure, me could be entirely wrong ;-)

-- Sergei.


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [ECOS] Re: Switching to using git on eCosForge
@ 2009-09-21 14:39 Alex Schuilenburg
  2009-09-21 20:06 ` Sergei Organov
  2009-09-21 22:08 ` Sergei Gavrikov
  0 siblings, 2 replies; 27+ messages in thread
From: Alex Schuilenburg @ 2009-09-21 14:39 UTC (permalink / raw)
  To: eCos Disuss

[Apologies to sergei for repost - grrr]

Sergei Organov wrote on 2009-09-21 14:05:
> Alex Schuilenburg <alexs@ecoscentric.com> writes:
>
> [...]
>
>   
>> Both bazaar and mercurial were a lot easier to learn and work with
>> than git. git's Windows support is also limited and is mostly
>> restricted to the 100's of cmd apps which make up git under cygwin.
>>     
>
> Once again, I'm not a Windows user, but is this really true nowadays?
>
> E.g., what about this one:
>
> <http://code.google.com/p/tortoisegit/>
>
> Isn't it good enough for Windows users?
>   
and hg has TortoiseHG <http://tortoisehg.sourceforge.net/>
(http://tortoisehg.sourceforge.net/).  Like I said, feature comparison
between git and hg is pretty much on a par...

Lack of windows support/integration is not my main argument against git
FWIW.

My main argument against git is it has a very steep initial learning
curve, and from experience you can hang yourself if you do not know what
you are doing.  (Yes, there are rollbacks, etc, but sometimes it is a
while down the line before you realise you did something wrong). You
really don't want to force new users on an additional learning curve. 
There are 100's of commands to remember, whereas both bzr and hg have one.

Also, while documentation is improving (http://book.git-scm.com/), it is
not as good or complete as mercurial (http://hgbook.red-bean.com/read/)
in terms of non-power users.  Both have books in print available from
places like Amazon.

For example, I started my evaluation with bzr, then hg then git. bzr and
hg were a lot easiest to pick up and start using than git.  I also have
done most of my eval on Linux, dropping back to Windows to see how easy
it was to use and integrate graphical diff tools, etc.

For other comparisons see:
http://code.google.com/p/support/wiki/DVCSAnalysis
http://www.rockstarprogrammer.org/post/2008/apr/06/differences-between-mercurial-and-git/
http://importantshock.wordpress.com/2008/08/07/git-vs-mercurial/
http://stackoverflow.com/questions/1450348/git-equivalents-of-most-common-mercurial-commands
http://rg03.wordpress.com/2009/04/07/mercurial-vs-git/
http://www.diffen.com/difference/Git_%28software%29_vs_Mercurial_%28software%29
...

but bear in mind that arguments against either git or hg may have
disappeared with more recent versions.  You really need to try both...

-- Alex Schuilenburg

   >>>> Visit us at ESC-Boston  http://www.embedded.com/esc/boston <<<<
   >>>> Sep 22-23 on Stand 226  at Hynes Convention Center, Boston <<<<

       >>>> Visit us at ESC-UK  http://www.embedded.co.uk <<<<
       >>>> Oct 7-8 on Stand 433 at FIVE ISC, Farnborough <<<<


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2009-09-22 17:29 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-09-17 10:52 [ECOS] Switching to using git on eCosForge Øyvind Harboe
2009-09-17 12:41 ` Alex Schuilenburg
2009-09-17 12:56   ` Øyvind Harboe
     [not found]     ` <4AB23FD3.2020808@ecoscentric.com>
2009-09-17 14:10       ` Øyvind Harboe
2009-09-17 14:23     ` [ECOS] " Grant Edwards
2009-09-17 14:37       ` Ross Younger
2009-09-17 14:46       ` Patrick Doyle
2009-09-17 13:10   ` [ECOS] " Patrick Doyle
2009-09-17 14:11     ` Alex Schuilenburg
2009-09-21 14:57       ` Øyvind Harboe
2009-09-17 13:32   ` [ECOS] " Sergei Organov
2009-09-17 14:02   ` [ECOS] eCos VCS switch (was: Switching to using git on eCosForge) Daniel Néri
2009-09-21 13:06   ` [ECOS] Re: Switching to using git on eCosForge Sergei Organov
2009-09-21 13:55     ` Sergei Gavrikov
2009-09-21 14:11       ` Sergei Organov
2009-09-21 14:39 Alex Schuilenburg
2009-09-21 20:06 ` Sergei Organov
2009-09-21 22:41   ` Alex Schuilenburg
2009-09-22  9:55     ` Peter Korsgaard
2009-09-22 11:08       ` Alex Schuilenburg
2009-09-22 11:21         ` Sergei Gavrikov
2009-09-22 11:41           ` Edgar Grimberg
2009-09-22 17:29             ` Ilija Kocho
2009-09-22 11:52           ` Alex Schuilenburg
2009-09-22 11:38         ` Peter Korsgaard
2009-09-22 12:21     ` Sergei Organov
2009-09-21 22:08 ` Sergei Gavrikov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).