Использование системы контроля версий SVN (Tortoise SVN)

Форум для поддержки пользователей. User support forum for general help and assistance.

Moderator: STC

User avatar
STC
LQFP144 - On Top Of The Game
Posts: 2420
Joined: Fri Oct 22, 2010 10:47 pm
Location: Ukraine, Kiev
Contact:

Использование системы контроля версий SVN (Tortoise SVN)

Post by STC »

Так как у многих возникают проблемы при первом использовании систем котроля версий, то я решил создать отдельную тему.
Спрашивайте если чего непонятно.
Author of the SECU-3 project. SECU-3 Engine control unit / Ignition control system
SECU-3.org (Русский)
SECU-3.org (English)
SECU-3 Club ВКонтакте
SECU-3 EMS Project Facebook
Serj_K
LQFP144 - On Top Of The Game
Posts: 330
Joined: Thu Dec 09, 2010 12:55 pm
Location: Kyiv, Ukraine

Re: Использование системы контроля версий SVN (Tortoise SVN)

Post by Serj_K »

Для тех, кто не обратил внимания - для Tortoise есть отдельній русификатор и есть описание на русском.
User avatar
Fred
Moderator
Posts: 15433
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Использование системы контроля версий SVN (Tortoise SVN)

Post by Fred »

I didn't even translate this, but I found the title offensive ;-)

SVN sucks!

www.github.com ;-)

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
Arseniy
LQFP112 - Up with the play
Posts: 154
Joined: Wed Dec 08, 2010 2:21 am
Location: Minsk Belarus
Contact:

Re: Использование системы контроля версий SVN (Tortoise SVN)

Post by Arseniy »

:lol2:
And what is cool?
User avatar
Fred
Moderator
Posts: 15433
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Использование системы контроля версий SVN (Tortoise SVN)

Post by Fred »

git is the best you can get. You don't have to use github, but it's a good choice. SVN is fine for stuff involving one person and linear development. As soon as you have branches and multiple distributed devs (read open source software) you need something better, git is it. It's not about being cool, it's about power.

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
alex34
LQFP112 - Up with the play
Posts: 181
Joined: Tue Dec 07, 2010 5:06 pm

Re: Использование системы контроля версий SVN (Tortoise SVN)

Post by alex34 »

Fred, can you tell some features that GIT have, and SVN dont?
User avatar
Fred
Moderator
Posts: 15433
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Использование системы контроля версий SVN (Tortoise SVN)

Post by Fred »

Distributed: Each repo contains a full copy with full history. Anyone can commit at any time to their copy. No permission is required. Upstream (STC) can pull your commits back in as he chooses (or not!). Because every copy is full, there is automatic full replication. All git operations are lightning fast due to local repo and no connections and efficient use of everything.

In contrast SVN checkout has only current copy, and a base file set. A single svn checkout is often bigger than a full git repo with all history due to the base files. SVN operatinos are slow and painful. SVN requires permission to commit, and conflicts are not easily handled. etc etc.

In git branches etc are smooth. The reason that SVN can not do this, is that it is linear, revsion one leads to two, and so on, only. Branches are copies as are tags. they carry a revision of their own too, also in sequence. With git, revision history is a tree structure and revisions are strong hashes of the content of the commit. A commit has N parents (usually one or two, but N is possible). The tree structure allows proper handling of merges in a mostly automatic way, not possible in SVN.

SVN has it's place, but it aint on open source projects on the net with mutltiple people devving.

excuse typos, 3am here.. fcuking tired..
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
dandruczyk
LQFP112 - Up with the play
Posts: 100
Joined: Sun Apr 06, 2008 6:30 pm

Re: Использование системы контроля версий SVN (Tortoise SVN)

Post by dandruczyk »

Fred convinced me to convert from CVS to git last year, and I have to say I love the change, CVS and SVN are very similar in how they work and their deficiencies, and with git all the problems wiht CVS that I had are gone.

Branches and merges are 100x easier with git
Accepting stuff from other users is a MUCH easier with git vs svn/cvs. i.e. in SVN/CVS I need for the other party to make a patch (that in itself can mess people up), then i have to try and get it applied, andd in almost every case it required a lot of manual work, because the patch/diff was done incorrectly or against a different revision and so forth. With git, I'd add a little info to my .git/config file so git knoew about THEIR fork of my repository and I could issue a "git merge <reponame> <refname>" and it would merge in the differences between their repo and mine.

Take a look at: http://www.youtube.com/watch?v=4XpnKHJAok8
User avatar
Fred
Moderator
Posts: 15433
Joined: Tue Jan 15, 2008 2:31 pm
Location: Home sweet home!
Contact:

Re: Использование системы контроля версий SVN (Tortoise SVN)

Post by Fred »

Good point, videos!

Also seem my "git for noobs" talk here:

http://www.youtube.com/watch?v=Uu2ySkRP3DA

Fred.
DIYEFI.org - where Open Source means Open Source, and Free means Freedom
FreeEMS.org - the open source engine management system
FreeEMS dev diary and its comments thread and my turbo truck!
n00bs, do NOT PM or email tech questions! Use the forum!
The ever growing list of FreeEMS success stories!
User avatar
STC
LQFP144 - On Top Of The Game
Posts: 2420
Joined: Fri Oct 22, 2010 10:47 pm
Location: Ukraine, Kiev
Contact:

Re: Использование системы контроля версий SVN (Tortoise SVN)

Post by STC »

Fred
What about flexibility of assigning user's access rights on the www.github.com?
e.g. Can I allow/disallow to access certain folder to some user(s).
Free version of service we are using on the assembla.com does not give such functionality.
Author of the SECU-3 project. SECU-3 Engine control unit / Ignition control system
SECU-3.org (Русский)
SECU-3.org (English)
SECU-3 Club ВКонтакте
SECU-3 EMS Project Facebook
Post Reply