Jump to content

Recommended Posts

compression in git is pretty awesome. it uses its own compression algorithm. therefore, it's very fast.

 

commits are local. so, if you're not connected to the net (maybe you're flying), you can commit locally and once you're connected to the net, you can push your changes to the main repo.

 

when you clone a repo, you're cloning the entire project so every repo is a copy of the entire project which means, you have multiple backups.

 

suppose you worked on some code for the last 6 months and i join your team today and i make a clone of the git repo on server X. i now have a record of all the commits you made from 6 months ago and so  don't have to be connected to the net if i need to revert to a commit made 5 months ago, for example.

 

merging branches are so much more easier compared to svn. svn used to drive me crazy when it came to merging but git is a lot easier.

 

also, starting a git repository is done like this:

git init

 

and then you just add in all your files with:

git add .

 

and you make a commit:

git commit -m "my first commit"

 

that's it. i don't remember how i used to initialize an svn commit but it wasn't so simple and so i happily forgot :)

 

Linus Torvalds (author of the Linux kernel) is the creator of git and he created it to manage Kernel development. apparently he was using tar balls to manage version control before using git as he wasn't too fond of SVN. although he did admit that Mercurial was pretty good.

 

just google around and you might see if git is actually the right fit for you. it usually is.

 

this is what i found: http://whygitisbetterthanx.com/

Link to comment
https://forums.phpfreaks.com/topic/182517-installing-svn/#findComment-963426
Share on other sites

  • 2 weeks later...

Because Linus built Git to support the specific requirements he had for people working on the Linux kernel, a centralized repo would never work. 

 

FWIW, Linus originally used a system called BitKeeper that he was very happy with for many years, however, the developer took the product commercial, and eventually Linus and the Linux team went searching for a replacement.  He was influenced by several other vcs systems at the time including monotone, when he developed Git.

 

At the simplest, the focus of svn is to be a centralized repository for use by a team.  When you make a change and commit it, everyone in the team, from that point forward, will have access to your changes.  When you do work on a team, this becomes a bit of a conundrum, as to when to commit a change.  The general rule of thumb in most teams is: "Commit when you know your change works properly and will not break the application."  Some people go so far as to automate this, so that any changes must first be run through an automated build system that tests to make sure everything works, before the changes are accepted.

 

Right away, this limits interaction with the version control system.  For example, you might be working on a file locally, and not be ready to commit, and in your testing you change various things over the matter of a few hours.  You do some testing -- things are looking good, then you decide to change something else *only to find that these changes are completely wrongheaded*.

 

Here is where the philosphy of local repos like Git give you an advantage, because you can go back to previous states in your local repository *which were not committed to the master repo*, if in fact there is a master repo at all. 

 

Git is by no means the only vcs that provides a local repo approach.  Another alternative vcs worth looking at is mercurial, which is used by a number of well known projects including Mozilla.  In my opinion, Bazaar is currently the best modern vcs.  Bazaar plays nice with svn, and is also used by Ubuntu and MySQL. There's some nice command line notes on bazaar use written by my friend Phil Larson  http://phillarson.blogspot.com/.

 

While we're SVN bashing, I can just as easily bash Git http://doc.bazaar-vcs.org/migration/en/why-switch-to-bazaar.html

 

Last but not least, there is nothing wrong with starting out with svn and learning the use of it.  In fact, many development companies use svn, so learning it can be helpful if at some point you're looking for a job.  You can later transition to Bazaar and continue to use your svn repo.  I think it's helpful to understand how svn works, and how it does what it does.  I'm not sure that the notes work by themselves, but I did publish notes on a presentation I gave on the topic of using svn for web development.

 

I also provide links to the most important resources.  In the article I show how to create an svn repo and how to do basic operations.

 

http://www.gizmola.com/blog/archives/88-Lampsig-2008-Presentation-on-Subversion-for-Lamp-Developers.html

Link to comment
https://forums.phpfreaks.com/topic/182517-installing-svn/#findComment-969967
Share on other sites

Now Bazaar is looking good.  So hard to decide haha.  Bazaar looks like the best one to start with...maybe easier with the gui.  The visual helps when I'm learning kinda see whats going on.  Thanks for the info btw I will look at your site and the others.

Link to comment
https://forums.phpfreaks.com/topic/182517-installing-svn/#findComment-969998
Share on other sites

Now Bazaar is looking good.  So hard to decide haha.  Bazaar looks like the best one to start with...maybe easier with the gui.  The visual helps when I'm learning kinda see whats going on.  Thanks for the info btw I will look at your site and the others.

 

Keep in mind that there are plugins you can get for most IDEs.  For example, a good SVN plugin for Eclipse is subclipse. 

Link to comment
https://forums.phpfreaks.com/topic/182517-installing-svn/#findComment-970004
Share on other sites

I hate to say this, but in most cases it's best to start out and learn the basics with the command line.  Getting a repository setup is often the trickiest part initially, and in some cases there's no good way to do it with a gui frontend.

 

Link to comment
https://forums.phpfreaks.com/topic/182517-installing-svn/#findComment-970276
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.