Recommendations for source control
-
Use
GIT
source control with TortoiseGit – Windows Shell Interface to Git[^] UI (no command line nonsense!) if you are a lone developer. If you need to work in a group tryGIT
with Gitblit[^] as a local server.:thumbsup:
-
Seconded, this is what I use at home, shared folder on NAS, VisualSvn plug in. Simple, free and up and running in under an hour.
Regards, Rob Philpott.
-
I'd recommend Mercurial, and since you don't like CLI, more specifically TortoiseHG[^]. It's simple to use, filebased, distributed and more consistent than GIT[^]. Joel Spolsky made a tutorial that you can find here[^], it's for the CLI version, but I'd still recommend reading it.
Wrong is evil and must be defeated. - Jeff Ello
-
What would you recommend for simple and free source control? I have some side projects I am working on and the code is on my desktop. I also want to work on the projects with my laptop. It doesn't necessarily need to be online, I wouldn't think, but wanted to hear what y'all are using to access the same code from multiple systems. If it matters, some of the projects are .Net and some are Unity. I am not interested in setting up my own server.
There are only 10 types of people in the world, those who understand binary and those who don't.
I'd suggest that they lock you out of the building.
I wanna be a eunuchs developer! Pass me a bread knife!
-
What would you recommend for simple and free source control? I have some side projects I am working on and the code is on my desktop. I also want to work on the projects with my laptop. It doesn't necessarily need to be online, I wouldn't think, but wanted to hear what y'all are using to access the same code from multiple systems. If it matters, some of the projects are .Net and some are Unity. I am not interested in setting up my own server.
There are only 10 types of people in the world, those who understand binary and those who don't.
I'd recommend Github which also has the advantage that it works with every other tool and development platform out there from Linux to Windows.
"There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult." - C.A.R. Hoare Home | LinkedIn | Google+ | Twitter
-
I'd recommend Github which also has the advantage that it works with every other tool and development platform out there from Linux to Windows.
"There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult." - C.A.R. Hoare Home | LinkedIn | Google+ | Twitter
-
...err, I mean TFS. ...I mean, Team Services. Sorry. I mean: Visual Studio Team Services I love Microsoft's naming. Really I do. It's free, it works.
cheers Chris Maunder
I've used Git, Mercurial, SourceSafe and TFS, even (from the dark ages) DECset on VMS and an SCM on CDC Kronos systems (darn, can't remember the name, and yeah, SCMs have been around on mainframes since the 1960s). TFS gave me the least amount of trouble. I develop both C# and .NET alongside embedded "bare iron" ARM GCC using Eclipse. TFS worked fine for both. Working with embedded involves building boards as well as writing code. I used TFS to version schematics, PCB layouts and reference manuals, even field service work instructions, along with code. That's where the database method is handy; it stores binary BLOBs as wll as code deltas. What I like best is the lack of "file droppings" in source code directories. TFS puts everything in a SQL database. This is developing in a commercial enterprise environment where project management is critical. TFS has a very nice work item structure to track design, bugs, testing, even deployment, and it integrates well with both VS and Eclipse, along with MS Project. The type of programing is not quite the usual mix. What I need is a common pool of drivers and RTOS tasks that I pick and choose for different circuit boards, sort of an a la carte program design methodology. Code is added to individual files with conditional compiles for different variations, due to IC pinouts, but basically similar targets. Directory level commit gets in the way because individual files are shared across several target builds, not the entire directory. Sure, other SCMs can do file level check in/out, but TFS does it best. These days I have to use Github, management directives from on high, but I do miss the ease of use with TFS.
-
What would you recommend for simple and free source control? I have some side projects I am working on and the code is on my desktop. I also want to work on the projects with my laptop. It doesn't necessarily need to be online, I wouldn't think, but wanted to hear what y'all are using to access the same code from multiple systems. If it matters, some of the projects are .Net and some are Unity. I am not interested in setting up my own server.
There are only 10 types of people in the world, those who understand binary and those who don't.
-
What would you recommend for simple and free source control? I have some side projects I am working on and the code is on my desktop. I also want to work on the projects with my laptop. It doesn't necessarily need to be online, I wouldn't think, but wanted to hear what y'all are using to access the same code from multiple systems. If it matters, some of the projects are .Net and some are Unity. I am not interested in setting up my own server.
There are only 10 types of people in the world, those who understand binary and those who don't.
One thing I didn't see anyone mention that is specific to your case: You'll need to be careful with choosing a cloud-based provider. Unity projects can get enormous because the UI will expect to check in your asset files as well. Asset files are very large, and (can be) binary, which means they won't play well with most source code control systems. Using raw Git will have a learning curve, but you could use your desktop as your "server". Git does not have a built-in concept of a central server. Every machine that has Git installed is both a server and a client. A central server in a Git organization is simply one that all the developers of that organization agree upon ahead of time.
-
Very simple...I have mapped drives on my laptop that are available offline. Synching is sometimes a pita, but this has worked for me for well over a decade.
"Go forth into the source" - Neal Morse
kmoorevs wrote:
.I have mapped drives on my laptop that are available offline. Synching
I have not used mapped drives before. I assume both computers must be online at the same time to be able to synch then? I'm not on both machines at the same time usually.
There are only 10 types of people in the world, those who understand binary and those who don't.
-
One thing I didn't see anyone mention that is specific to your case: You'll need to be careful with choosing a cloud-based provider. Unity projects can get enormous because the UI will expect to check in your asset files as well. Asset files are very large, and (can be) binary, which means they won't play well with most source code control systems. Using raw Git will have a learning curve, but you could use your desktop as your "server". Git does not have a built-in concept of a central server. Every machine that has Git installed is both a server and a client. A central server in a Git organization is simply one that all the developers of that organization agree upon ahead of time.
-
kmoorevs wrote:
.I have mapped drives on my laptop that are available offline. Synching
I have not used mapped drives before. I assume both computers must be online at the same time to be able to synch then? I'm not on both machines at the same time usually.
There are only 10 types of people in the world, those who understand binary and those who don't.
RyanDev wrote:
both computers must be online at the same time
My setup also involves a server where all development projects and files reside. My main development PC uses mapped drives (not available offline, since it is always connected to the server) and my laptop uses the same mapped drives configuration except they are marked to be available offline. I only work on the laptop one or two days a week. Before leaving the office, I simply synch all the offline files. This allows me to work wherever I need to (on the laptop) with or without an internet connection. When I get back to the office, I let the laptop synch any changes with the file server. As a sidenote, this also makes for a very good backup system...if the server crashed, all my code is safe on the laptop. :)
"Go forth into the source" - Neal Morse
-
Richard MacCutchan wrote:
Subversion: very simple, doesn't need a server
I thought it did. Thanks.
There are only 10 types of people in the world, those who understand binary and those who don't.
-
What do you guys use for your code repository?
-
Funny, I was actually being serious with my question and you give that as an answer. Interesting...
-
Chris Maunder wrote:
Visual Studio Team Services
Nice. I think I'll try that out. Thanks.
There are only 10 types of people in the world, those who understand binary and those who don't.
Also, if you end up liking Visual Studio Online, you can use GIT as source control provider, having the bost of both worlds; and if you don't like command line to manage commits, etc. you can use GITKraken... it has awesome and very visual UI
-
:laugh: That made my day!
Thanks, Robin.
-
What would you recommend for simple and free source control? I have some side projects I am working on and the code is on my desktop. I also want to work on the projects with my laptop. It doesn't necessarily need to be online, I wouldn't think, but wanted to hear what y'all are using to access the same code from multiple systems. If it matters, some of the projects are .Net and some are Unity. I am not interested in setting up my own server.
There are only 10 types of people in the world, those who understand binary and those who don't.
As you work in NET and Unity, I believe that your winner free combination is using GIT with Visual Studio Community Edition. Visual Studio assists you in many GIT functions, and allows you to work in the cloud with Visual Studio Team Services, GitHub and any server that supports GIT Clone, Fetch, Pull, etc. You don't have to settle definitely on one cloud repository, because you can use a different one for each project. Visual Studio Team Services is great for large software projects because it offers project control tools (Agile, Scrum, etc), and it is the only one that allows you to have some private projects for free. GitHub is the best for open source projects, etc.
Sorry for my bad English
-
What would you recommend for simple and free source control? I have some side projects I am working on and the code is on my desktop. I also want to work on the projects with my laptop. It doesn't necessarily need to be online, I wouldn't think, but wanted to hear what y'all are using to access the same code from multiple systems. If it matters, some of the projects are .Net and some are Unity. I am not interested in setting up my own server.
There are only 10 types of people in the world, those who understand binary and those who don't.