Windows GUIs for git [closed] - windows

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I am aware of this question, but it is a bit old now, and some of the answers seem outdated.
Question: please write one answer per GUI you have used, including pros and cons (for example, as far as I can tell, with git gui, you can't manage the stash).

(This is not exactly a "Windows" standalone Git GUI, but still quite advanced)
Considering that since then, Eclipse is in the process of mirroring all its projects in Git repositories, EGit (based on JGit) have made some progress and are part of the Eclipse ecosystem, and is on par with its Mercurial counterpart.
You can contribute to EGit there.
This Tutorial is quite complete.
alt text http://www.vogella.de/articles/EGit/images/github60.gif

So far I've been happiest with Git Extensions.
Pros:
Fairly complete access to git commands
Doesn't hide git specifics like the index (unlike Tortoise)
Good branch visualization
Visual Studio integration in addition to standalone GUI or shell integration
Actively developed
Cons:
UI is rough around the edges in looks and usability.

As for the GitHub for Windows - I have used it for a little time and it's pretty nice. Very esthetic and quite straight forward. It's even better when working with repositories located on GitHub (however I used it with other targets as well).
Today I switched to completely new client for Windows made by Bitbucket named SourceTree. As I understand it's a port from Mac client and thanks to that it looks and feels great. It has LOADS of options and tools (I have not familiarized myself with many of them) and it's constantly developed ( http://blog.bitbucket.org/2013/03/19/introducing-sourcetree-git-client-microsoft-windows/ ). They released the Beta version on 19.03.2013 and they have some really nice plans for future (Mercurial support as well!). I do think that it's worth a look.

Have a look at Atlassian SourceTree. It's a free Git Client for Windows & Mac.
I'm using it since the beta. And it's really the best tool ive ever used for git in my opinion.
Say goodbye to the command line – use the full capability of Git and Mercurial in the SourceTree desktop app. Manage all your repositories, hosted or local, through SourceTree's simple interface.
More informations under:
http://blog.bitbucket.org/2013/03/19/introducing-sourcetree-git-client-microsoft-windows/
http://www.sourcetreeapp.com/

I've been using SmartGit for a few days now, and I have to say I'm very impressed. I'm not a git-genius, but so far I haven't had to break out the CLI for anything.
And the UI is just... pleasant, frictionless. There aren't any of the "couldn't they just have done this?" annoyances that I've found with others.

Another option now is http://windows.github.com/ Github for windows. But only really if you are syncing with GitHub. I've been using this for a few weeks, and I do find I need to fire up a shell from time to time. Its also unclear what commands its actually issuing. I keep ending up in the middle of a broken rebase - but I have no idea why its rebasing! But for frictionless use 99% of the time its great.

I've used the following
GitHub for Windows - required me to download installer which took a long time for me to install. UI was too basic for me and at that time was very slow even when using a local repository.
SourceTree - UI looks goods but under delivers on features when compared to GitEye and SmartGit.
Collabnet GitEye (site) - UI is famililar to Eclipse users just like me. Worked great and especially had a credential store (SecureStore) which inspired some confidence in how it handles storing of passwords plus SSH key management.
SmartGit (site) - offers personal and commercial versions but even the personal version is an absolute pleasure to use. Staging files, looking at logs, reverting, committing, pushing etc. The features were sufficient for me.
I'd recommend the last two especially SmartGit since the UI is user friendly and pushing to more than 1 repository is much easier.
My answer is not really that verbose but please try to download and see for yourself.

With visual studio there is http://gitscc.codeplex.com/ Git Source Control Provider which is a Visual Studio Extension. More into in this SO question Using Git with Visual Studio

Related

What is the most common version control software for Windows? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
Coming from a UNIX background, with some knowledge of CVS and git, I have gotten my Windows development skills up in just about every area. But I still have no idea if there is a single VCS that Windows devs "have" to know.
Is there one used above all others?
The makers of FinalBuilder used to do a survey every year of their (mostly Windows-based) customers. I can't find anything more recent than their 2008 survey, but here's what it looked like then.
As you can see, there isn't just one you have to know. However, you'd be a fool not to familiarize yourself with Subverion and Sourcesafe.
If I were to predict how it has changed since then, I'd guess that Subversion has added users, SourceSafe has lost a bit of ground to Team Foundation, and that Git now shows up, but with only minor numbers.
TortoiseSVN (svn) has tight integration with explorer, and most devs I know that run Windows and use subversion also use Tortoise.
Not really specific to Windows I think, but Subversion (SVN) is a must.
Short answer, is SVN.
For free:
CVS is pretty much dead.
Subversion has the best integration with windows (explorer, visual studio, eclipse, command line, WebDAV, etc...) it also has GUI's for other platforms.
With Git you're relegated to use the command line exclusively.
Not Free:
Perforce is okay, but whatever you do, don't use Visual Sourcesafe and risk your entire repository getting corrupted at some point in time and not realizing it until much later.
Yes, TortioseSVN runs quite well on windows. There's also a Tortoise for git! Though I am not too sure if it's as easy as its SVN cousin.
https://tortoisegit.org/
In general, the same types of source control that you use on UNIX may also be used on windows. There are certainly ones to avoid on windows - VSS immediately comes to mind.
Before DVCS, all the cool kids used SVN; everyone else used VSS or TFS.
DVCS is turning into an interesting competition as Git clearly has the edge in functionality but Mercurial has the edge in Windows integration. Poor Bazaar doesn't seem to be getting a look in.
VisualSVN ties into VS as well and uses TortoiseSVN for a backend. It's $50 per license iirc. Works pretty well. If you're looking for a good tie-in with Visual Studio also check out AnkSVN.
We use msys-git quite successfully on windows. The GUI tools are not great. I use the command-line and it works fine. My colleagues use git-extensions which integrate into visual studio. It seems to work ok.
The other option to me would be SVN. It has great windows support.
I would agree: Subversion. But I an quite sure, it will be succeeded by git some day.

Is there a good (visual) Git tool for Mac OS X or Windows? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
I'm looking at porting my projects to Git from SVN (I'm convinced that Git is worth the move) and I'm trying to come up with a set of tools to use for the project. I've googled around for some tools but I wasn't really impressed with what I found.
What visual tools are recommended for Git users on Mac OS X? What about Windows? (I have multiple development environments and I need git tooling in each one of them)
Here's one for Mac: GitX
Screenshot:
Source Tree (for MAC)
Screenshot:
Windows has TortoiseGit. It is not as mature as TortoiseSVN, but I've been using it and it works well enough for my purposes.
Screenshot:
EDIT [Dec 2014]: I'd also recommend looking at Dan's answer. Github's UI is probably the most mature/supported tool out there now (even if you don't use Github!)
Try Git Extensions.
Screenshot:
I'm surprised nobody has mentioned Tower for Mac OSX.
Here is a screenshot:
In the vein of teaching how to fish: take a look at https://git.wiki.kernel.org/index.php/InterfacesFrontendsAndTools page on Git Wiki, which has section about GUIs.
Git Homepage also has section about GUIs: http://git-scm.com/downloads/guis
GitGui comes with git. It has always worked great for me. Is there some problem you have with it?
Screenshot:
For OSX I don't like Tower. I have had too many crashes and problems. On the other hand, Source Tree works very well. Albeit it requires a bit more understanding of git itself. IMO Tower is no Cornerstone. I wish Cornerstone would support GIT.
There is a native port of Git to Windows, called mysysgit.
If you use Eclipse, there's a Git client that hooks into that - egit.
TortoiseGit is a standalone GUI client.
Git#/GitSharp is a client for git for .NET.
Mac users will hopefully be able to provide some examples for MacOS.
Enjoy it!
Git extensions for Windows works great and integrates with Visual Studio (if you need it). I haven't tried TortoiseGit, but I've heard it's not quite ready.
On Mac, I've tried GitX and wasn't very impressed. It seems to missing many of the git commands and I have to use the terminal on a regular basis. There is another one called Gity, but it's very new and I have not tried it yet. It is free now, but I think that will end once it reaches 1.0.
For Windows, I recommend the GitHub for Windows client (which also works with other local and remote repositories, even though it's setup to work with Github by default).
Here is a screenshot:

Using Source Control [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I am a very new programmer, I have made a couple basic applications, however I was told that it would be good to get used to using "source control" at the near the beginning of learning so I get accustomed to it. I have gathered that source control is what is used to manage programs with multiple programmers and that it is somehow connected directly to my projects in Visual studio. I also believe there are two primary versions, "TFS" and "SVN". Past that I am fairly lost, I am not sure what I need to actually implement this, specifically how I would do so on my personal projects. Also I don't know what program(s) are needed.
Should I use TFS or SVN?
What program(s) do I need to install?
How do I implement them in Visual Studio?
Is it a good habit to get into for my personal programming or would you disagree?
Please go ahead and open up wikipedia, you have a bit of reading to do:
Revision control
Subversion
With that reading done, you should have a better understand of what source control is. As a programmer, I'm pretty sure you'll find it makes sense to "save" what you're working on, making changes incrementally and being able to go back to those changes.
In a nutshell, revision control is the ability to go back in time, so that you can read code you have written at that moment.
Ok first there are many source control products other than the two you have mentioned but I would get used to SVN first.
TFS is expensive and tied into the Microsoft stack.
I'd start with reading this:
http://svnbook.red-bean.com/
Specifically the chapter on fundamental concepts
Yes this book is tied in to svn but it covers the basics too.
When you have read that download TortoiseSVN. This is an svn client that hooks into your windows shell. Only when you are comfortable with using this would I then move on to an integrated svn client. (I actually don't use one) AknhSVN is free.
The source control system is separate from your IDE. You can use it from the command line, or from a graphical client as well as from your IDE.
What you should know about a source control system is this:
you save your increment changes to the SCM (source code management), and each save receives an unique id/revision
you can retrieve any revision on any time, therefore changes are never lost
this gives you the liberty to delete unused code, debug info, or to refactor existing functionalities
and most importantly, it gives these functionalities to all members of a team, so that the team can work at the same time on the same code base, from their own development machines
You could start with svn, as it's very popular (especially for open source projects) with widespread support. You can gen the command line client from here:
http://subversion.tigris.org/
This is a nice graphical interface (windows):
http://tortoisesvn.net/
This is a free book to help you start with svn:
http://svnbook.red-bean.com/
If you need to setup a server on your development machine, this tutorial should help:
http://blogs.vertigosoftware.com/teamsystem/archive/2006/01/16/Setting_up_a_Subversion_Server_under_Windows.aspx
check out Git and think about hosting your projects on https://github.com/ - also, check out linus talk on git: http://www.youtube.com/watch?v=4XpnKHJAok8
there are many different source control providers including TFS, Subversion (SVN), Perforce, CVS and Visual Source Safe to name but a few. It is also one of those areas that people tend to get semi-religous on, so I'll tread carefully!
I think most people would agree that Visual Source Safe is not the way to. It is fairly simple as a source control system but would do little to teach you about source control in general. TFS, SVN and Perforce tend to get pretty good feedback from their users.
Out of these, SVN is the only one that is free, so if you are planning to do this as a learning exercise, I'd be inclined to start there [actually I believe you can get a free 2 user license for Perforce too, but I'm not 100% sure on that). You can learn all the basics with this, as well as more advanced areas such as branching and merging.
If you do give it a go, I recommend you download SVN itself, and the TortoiseSVN client for Windows Explorer (I'm assuming you are on Windows here as you mention Visual Studio). You may also want to look at source control integration into Visual Studio, in which case I use VisualSVN (there is a free trial), but there is another popular one whose name eludes me (someone will hopefully add it as a comment).
Additionally there is a great, free, e-book for SVN, available (here)
Overall - to answer your specific questions:
Should I use TFS or SVN?
SVN
What program(s) do I need to install?
SVN itself (the server) and TortoiseSVN
How do I implement them in Visual
Studio?
Use VisualSVN or another SVN for Visual Studio client. You don't need this to learn source control, but it is well worth trying it out from in the IDE.
Is it a good habit to get into for my
personal programming or would you
disagree?
Yes, definitely!
Good luck, and hope you enjoy getting into source control.
Of the source control systems I've used Subversion with Tortoise is my preferred choice (I've used VSS, Subversion (SVN) and TFS).
Subversion has some excellent documentation on how it works and also on the general concepts of version control so that you actually understand what you are doind and why.
If you want to set up Subversion on a Windows stack then by far the easiest way is with VisualSVN which is free. The client side plug in to Visual Studio, however, is not free. But there are many free alternatives such as Tortoise.
You should not usually host your own subversion/git/whatever server. It is time consuming and error prone. For small projects subversion and git hosting can be found for free, and give you offsite backup, the ability to work from anywhere and the ability to add offsite programmers to a project with ease. If your needs grow, you can pay a small monthly fee.
You can use a google search to find candidates. The one I use is http://unfuddle.com.
I found this article to be very clear. (It recommends SVN).

Software for managing medium sized projects [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
So, at my current job we're usually 1-3 developers, 1-2 art directors and 1 project manager on each project, with the smallest ones just being one of each and the larger ones being three developers and two art directors.
I'm looking for a software, combination of softwares or some type of service that will allow us to manage our projects individually, it's important that we're able to manage several projects at once within one system/piece of software (without going through a too complicated setup process for each project) since we usually have 2-3 ongoing projects in parallel.
We need to be able to integrate with SVN, Track bugs/features/request, Put up milestones and some type of agile management a´la SCRUM would be nice.
Preferably it should be able to run on Windows (without to much hassle, ever tried to put up Apache+Python+Svn+Trac on the same Windows 2003 server and get them all to run together? not fun.) since we mostly do .NET development and most of our servers run Windows 2003.
Since you seem to have a maximum of six people working in a single room - I'd give serious consideration to not using software at all.
A whiteboard & cork board for each project, plus a whole lot of index cards / stickies can go a long, long way towards meeting the project management needs of one or two small projects.
(Failing that - I've found basecamp a fairly lightweight tool for small projects - although it doesn't do any sort of source control integration. I've also heard good things about the latest FogBugz - but I've had such bad personal experiences of earlier versions I've not tried it yet myself)
http://www.project-open.org/ covers your requirements and is available for Windows. However it is targeted at larger organizations (>20 employees), so that you might find it overkill for a group of 6.
I personally use BaseCamp for my company and have had great luck with it!
Edit oops, I didn't notice the SVN requirement, BaseCamp can help with the other stuff.
You might want to try out Mantis (www.mantisbt.org). It is a little cumbersome at first, but with a little bit of customization, it will work for you. It has SVN integration, and a bunch of other stuff which I haven't used yet... :|... such as Mobile support, Wiki support, etc.
And it's OSS (Open Source Software). Written in PHP, works with MySQL, or PostgreSQL. Just check it out, it's good.
http://www.mantisbt.org/
Atlassian's Jira Studio sounds like exactly what you need. It's hosted, so there's nothing to install.
If you want something that is quick and easy to work with that integrates well with Windows I would suggest Microsoft Office Groove. I have been using it on my current project and it also easily allows you to start new projects and add members.
It is not the best solution in the world, but it is included with Office '07 and it has tools to help with project management, bug reporting, calendar, meeting summaries, etc.
The one major problem I have found with it is that version control is not included by default. From what I understand you have to setup a SharePoint server to have version control in Groove, but I have not done this yet and have been hoping that my backups will work fine.
+1 for starting out with a whiteboard, stickies and whatever other office supplies you can think of. Being able to visualize the state of your project in a big visible wall can be really useful, more so than software-based tracking, IMHO.
You need to make sure the team is committed to keeping it up-to-date, though.

Is there a barebones Windows version control system that's suitable for only one guy? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I'm trying to find a source control for my own personal use that's as simple as possible. The main feature I need is being able to read/pull a past version of my code. I am the only developer. I've looked at a lot of different version control systems, but they all seem way more complicated than I need. I need one that's simple, runs under Windows, and doesn't expose itself to the network.
Specifically, the version control system should not require exposing an HTTP interface, it should interact with the local filesystem only. It just needs to be a version control system geared for one guy and one guy only. Graphical UI is a plus.
Does anyone know of software would satisfy what I'm looking for?
Thanks!
-Mike
Subversion is great -- you can run the server yourself or use something like assembla.com to host your code (although that exposes it to the network).
There are numerous gui applications like tortoise svn that would allow you to interact w/ the source control repo
From what I understand, and at the risk of sounding like a fanboy, you might want to consider a DVCS (distributed version control system) like git or mercurial. They essentially take away the central repository part, so it should be ideal to use when you're a solo developer.
Another advantage is that when you decide to add people to your one-man team, you don't have to set up a central repository. All they have to do is clone your repository and they're good to go!
If you're windows based and are used to a shell plugin like TortoiseSVN I'd pick mercurial. Their windows integration is just a bit better than git's, using TortoiseHg. The git counterpart (cheetah) is on hold at the moment, due to the developer getting sick and tired of all the demands people were making ;-)
If DVCS is too exotic for this situation you could always rely on SVN. I've heard good stories about the already mentioned VisualSVN solution. Install, make some repositories and go. Install TortoiseSVN for shell integration, or perhaps Subclipse or ankhSVN for eclipse and visual studio, respectively.
Note: I have not actually tried git or mercurial in a real life project, just some test setups. I now have a simple project WITH version control (using mercurial in my case), without having to have access to a central repository.
Sourcegear Vault is free for a single user and you can run both the client and the server on your own machine.
Subversion with TortoiseSVN.
Like all version control systems, it will sound reasonably complex when you start off, but it's really very simple once you get into it, works well for a single developer, and doesn't require any network access if you don't want it to.
Plus, it's free.
For what it's worth, you can use Subversion & TortoiseSVN without a server using file:/// URLs to connect to you repository. I've done this to create repositories on USB thumb drives that I can move from machine to machine.
Here's a nice write-up: http://www.fredshack.com/docs/tortoisesvn.html
I use the free (2 user?) licence of Perforce. Powerful, fast, and well documented.
I'm a very satisfied user msysgit for Windows. It contains a recent copy of git as well as a GUI, a shell and a history browser in a single install package.
No need for a server component and if you do decide to host it somewhere your repository is signed and cannot be modified by the hoster without you seeing it. Finally, moving the repo to a server is a easy "push" operation which keeps all of your history.
You really can't get much easier than VisualSVN for version control on Windows.
I like to use Google Code, even for my one man projects, as it provides a Subversion repository already set up. Also, the server is offsite, which protects against hard drive failures and other disasters.
You might find Mercurial to be pretty nice for that purpose. You won't have to set up a server and creating the repository is as simple as doing "hg init" in the directory where your work is.
All the previous suggestions are pretty simple, and I know cvs is a bit out of vogue these days, but I like to use it's local mode for a repository that doesn't even need a server to install or set up. The repository can be anywhere on your hard drive. I have mine on a memory stick to have access to it anywhere even without an internet connection.
The key commands are:
cvs -d:local:/full/path/repository init
to create the repository
mkdir /full/path/repository/project
to create the module, and
cvs -d:local:/full/path/repository/cvs co project
to check out a local version.
TortoiseCVS gives you your Graphical UI
Bazaar. See Bazaar in five minutes for a great start.
Whenever you save a file, run the $ bzr commit -m "Added first line of text" command, and it's all taken care.
If you edit over FTP, make the FTP folder as a drive or folder, and bzr update after the commit.
+1 for Subversion, for those not familiar with it I would recommend the SVN Book.
VisualSVN Server is a complete installer for Subversion Server on Windows.
VisualSVN is a Visual Studio plugin for Subversion integration.
You could go with Mercurial.
It's very easy to start working with and there's TortoiseHg which integrates nicely with Windows shell.
You don't need a server for it as it's a distributed version control system - you can hold a whole repository copy on a flash drive and push/pull changes from it.
If you wish, you can put hg in a web server mode that makes the repository easily accessible over http.
As opposed to SVN and CVS, it doesn't spread its metadata directories all over the repository. There's just one .hg directory in repository root.
I use it daily and love it!
I use Subversion and TortoiseSVN — both are free. Your repository can be on the local machine. You don't have to work over a network.
However, for disaster recovery or even simple machine fault, it's probably a good idea to store your repository on a different computer and also back it up.
You might want to consider using a third party service to host your repositories off-site over the internet. I use CVSDude and am satisfied.
I am also a lone developer, and I use Subversion and TortoiseSVN.
Setup of Subversion is quick and painless; it can be done in less than half an hour including setting up the repository.
There is no requirement by Subversion to run on a server, I actually run it on my local machine and keep my repositories on a separate drive. Connecting to the repository uses svn:// instead of http://. I'm not sure why you require that it does not expose itself to the network, but this would be a matter of security via obscurity. I'm sure networking experts could suggest better methods for locking it down, should that be necessary.
Once the repository has been created, commits and updates from the repository are as simple as right-clicking on a folder in Windows Explorer.
Any distributed revision control system is best for lone developers, like git or Mercurial. Best thing is you can incorporate more developers to your project seamlessly, as opposed to having to give them access to your main centralized SVN or CVS repository.
SVN and TortoiseSVN work for me. Definitely ensure you have offsite backup.
You might want to check out the wiki article Comparison of revision control software. A (slightly hard-to-read) comparison tool might help. You might enjoy If Version Control Systems Were Airlines.
I came here looking for the same thing, and I saw someone suggest Google Code. I tried it out, and it was brain dead easy to set up. Exactly what I was looking for. Works like a charm with TortoiseSVN (my favorite).
I came here for a solution, Google Code was all set up in about 2 minutes. You can choose SVN, git, or mercurial for your version control.
You should check CVSNT as server and use any of the clients you would like (standalone or integrated with your IDE). There are plenty of them.
Use Visual SVN to setup your server and then use Tortoise to access your repository. Both are free to use and we have been successfully using it for quite sometime now.
#gorgapor: Doesn't the Google Code TOS specify an open source license? It's not a generally applicable solution in that case.
I haven't seen anyone mention Perforce. Perforce allows you to use their software for up-to 2 users for free. You can run the server and clients in the same machine, which will give you the environment that you want.
This is much the same question as Source control system for single developer
The bottom line is: yes there is. More than one.
My opinion is that SVN will do just fine. it does for me in similar cases, as described here: Single serving source control
I have heard of a hosted Subversion vendor Versionshelf (http://www.versionshelf.com) on a podcast I listen to.
This site also has a list: http://snook.ca/archives/servers/hosted_subversion/

Resources