On 19.06.2008, at 15:58, Guillaume Cottenceau wrote:

Stipe Tolj <st 'at' tolj.org> writes:

My major concern is the user side. I know that git is used for
the kernel and kernel-close projects. But these are all C hard
coders, they "know what they do" (now, I guess we hope so :p),
but Kannel users are more the application users.

I don't really see the difference you're trying to push here. If
that's a programming language problem or a "non kernel" thing
issue, then ruby on rails is using git, fedora's installation
program (in python) is using git, multiple GNU tools such as
autoconf, automake or coreutils are using git, etc. And many
Debian projects:

http://git.debian.org/


Debian is just a "small" world. there's many other linuxe's out there and many many other unixes and non unixes. And I wouldn't care less on what ruby on rails is using. Thats by far not any reference to what we do with Kannel. Python or Perl also have their own way of checking out repositories so we could come up as well with a KannelVS or the like if we want to go that way (which we don't want to of course).

From a developer view I would say, if you use cvs, svn or git comes to the same. You check out from a repository and you commit to it. That's the day to day work. If you do it from the command line it doesn't matter that much if you type "cvs commit" or "svn commit" or "git commit". And so far there are not a lot of branches in the current cvs of kannel. There's basically a single repository for development and a branch for stable releases. Those things are maintained by hand I guess as its pretty rare.

Because of this, many repositories for C project still use cvs. iIs available for all unixes out there and for non unixes mostly too. Its old but it does what it's supposed to do. So its the lowest common denominator. It has a few issues in my eyes. One of them is version number on individual files instead of the whole project and the non removable directories. Going back to a specific version means finding out in time when this could have been. Subversion (svn) has overcome those issues and is widely used so far. Git is even newer and used on less projects. I have checked out many open source repositories in the past and so far I have not come across git yet.

I've checked through some popular open source projects which are not Linux only.

php uses CVS.
mysql used cvs and now svn
Apache uses svn
Asterisk uses svn
Wireshark uses svn

So who uses git ?


If you would ask me to switch from cvs to svn, I would not see a problem. git however is not integrated in my main platforms. I figured out that its pretty easy to install from source on my MacOS X machine but I have not tried solaris 8 yet which probably is more of an issue. What however does not work is the GUI tools I use on a daily basis. Which means I can not use any gui to see diff's of a specific revision etc. I would have to do it on the command line so git would be a step back for me.

And frankly I don't see the real day to day benefits of git over svn. Svn is wide spread, comes with my preferred operating system already built in. That's not true for Debian Net install for example (even though its only one command away....).


And any people can view the git repo as a CVS repo with
git-cvsserver, if you want to be nice to some users

You want to be nice to the core developers and main commiters of Kannel. Those who work on it. For checkout of anonymous folks, you can put up a tar.gz file or binary on to the website.


(but again,
as my simple example showed in last mail, a simple 3-steps
documentation will show a git newbie how to get the repo and
submit a patch).

what's wrong with

cvs diff -u   or   svn diff   ?

Thats just one step instead of 3 ;-)


Question: Is git POSIX.1 compliant? In terms of platform abstraction?

According to http://en.wikipedia.org/wiki/Git_(software) it's
POSIX. Quoting the page:

 Git is targeted to run on Linux, but can be used on other
 Unix-like operating systems including BSD, Solaris and Darwin.
 Git is extremely fast on POSIX-based systems such as Linux. Git
 also runs on Windows.

And don't forget that by using git-cvsserver one can access a git
repo with cvs.

I followed
        http://dysinger.net/2007/12/30/installing-git-on-mac-os-x-105-leopard/
to get it installed. It has already 2 dependencies I don't like.
gettext doesnt come with my system. Its installable but it takes an awful lot of time to get it compiled. gcrypt gnu crypto stuff often is not very portable outside linux. I had some bad experiences with gnuTLS (still doesnt work for me). This one however seemed to work.


There is no Linux specific requirements I guess? What is the
underlying repo storage type? Berkeley DB?

It's an (extremely efficient) internal data storage format, seen
as local files on the filesystem.

As a last comment on the storage type, here's a quote from some
git documentation:

 The Mozilla repository is reported to be almost 12 GiB when
 stored in SVN using the fsfs backend. The fsfs backend also
 requires over 240,000 files in one directory to record all
 240,000 commits made over the 10 year project history. The
 exact same history is stored in Git by only two files totaling
 just over 420 MiB. SVN requires 30x the disk space to store the
 same history.

I would not say diskspace is an issue for the kannel project We don't have THAT many source files or commits compared to Mozilla.

One thing: how do you backup a git repository? As SVN has lots of files, you can do incremental backups. Is that the case with git or would it simply have two big monster files you have to do a full backup of on a daily basis?

Stipe: how big is our current repository?




Andreas Fink

Fink Consulting GmbH
Global Networks Schweiz AG
BebbiCell AG
IceCell ehf

---------------------------------------------------------------
Tel: +41-61-6666330 Fax: +41-61-6666331  Mobile: +41-79-2457333
Address: Clarastrasse 3, 4058 Basel, Switzerland
E-Mail:  [EMAIL PROTECTED]
www.finkconsulting.com www.global-networks.ch www.bebbicell.ch
---------------------------------------------------------------
ICQ: 8239353 MSN: [EMAIL PROTECTED] AIM: smsrelay Skype: andreasfink
Yahoo: finkconsulting SMS: +41792457333






Reply via email to