views:

93

answers:

2

I have never used SN or Git but I really want to start. I have doen some reasearch over the past couple months but it seems really confusing to me. I just now watched a tutorial video for using git with github.com and it seems like something I can do. I have some questions though.

1)
The reason I liked the git is because it seems really easy to view my files and changes made on the github site. If I were to learn to use something like TortouseSVN, does it make it really easy to view my files and all changes made like it is on the github site?

2)
1 thing I do not like about the github site is that I do not want my code to be made public, so is there a way to use git and still be able to view changes made locally somehow?

3)
Do you know any good resources on how to setup and use TortouseSVN on windows 7, for someone who has never used any sort of source control?

+1  A: 

git is better setup under linux, and it has the gitweb/gitk ready to display the changes in repository.

Dyno Fu
websvn looks interesting, Do you know of anything similar for git? Gitweb is really awsome but cost money for private, I need to keep my projects private.
jasondavis
+2  A: 

Ok, you're liable to get flooded with responses but the basics are fairly simple:

  • Using version control is a seriously good idea for any number of reasons
  • Its possible to use most version control systems on a single system - there's no reason why you should have to use github however you will lose a lot of the benefit if you don't have your code stored on at least one other system (but again this doesn't have to be a public system like github).
  • There are other choices e.g. Mercurial (for which there is TortoiseHg - which has the advantage of being a complete Mercurial install all in one go).
  • There is a Tortoise for git: http://code.google.com/p/tortoisegit/

If you're a solo developer then git or mercurial is probably the way to go, I firmly believe that a "server" equivalent repository is a requirement (its the one you hook your Continuous Integration server into) but you don't need to be server based as SVN is (there are issues with working practices with distributed systems that are inherently avoided with server based systems but the argument is that the benefits outweigh the challenges and I'm beginning to see how that might be the case).

To explicitly answer your questions:

  1. Yes, the various Tortoise implementations (SVN, Hg, I'm assuming git also) give you good tools to play and to view what changes you've made. There are other options too.
  2. Yes, you can use git or hg or svn and see what you've done locally
  3. For SVN you more or less require a server (this is about working practices not about system requirements) - by far the easiest way to set one up is using VisualSVN server: http://www.visualsvn.com/ however I think I'd suggest pulling down TortoiseHg - http://tortoisehg.bitbucket.org/ - which will do a complete Mercurial installation for you and having a play with that.
Murph
thanks, a lot of useful info
jasondavis
Git is looking better by the minute, my IDE is called phpDesigner and it has support for tortoiseSVN though, when I have a file there is a menu for SVN in my IDE where I can update, commit, merge so it would be easiar I think to use SVN, so many options though
jasondavis
@jasondavis - IDE integration is nice, though I've survived without for the past 7 years or more (having previously worked with it integrated) and the various Tortoise options make working without perfectly feasible, accordingly I'd work out what the best tool (in the sense of most appropriate to your circumstances) is first and progress from there. I *like* SVN, I've used it a lot, it works well and it does what its supposed to. As I said, distributed (as in Git or Mercurial) does have advantages but also some potential pitfalls - but they all do the job.
Murph