Using Git on Windows - windows

What is the simplest (to install and use) git client for Windows nowadays?

msysgit and TortoiseGit / GitCheetah

Apart from others have already said, there is also SmartGit.

msysgit is, like everyone else said, wonderful.
You should also look into Git Extensions for visual studio integration, which I find I can't live without.

I just use the one in Cygwin, although many people are looking forward to msysgit once its out of the preview stage. If they make it a no-brainer to install (like in Cygwin), it would be nice.

I had serious issues with negotiating SSL connections with msygit+putty. It's so much easier on cygwin. I even wrote up a guide on it. See Windows Git Tutorial: Cygwin, SSH and Projectlocker.

Related

How can I use Vi on Windows?

Other people who have asked this question had answers about downloading Vim from Vim.org, but that website doesn't respond.
Are there other ways to use Vi on Windows?
It's pretty simple to set up vim on windows, although I just tested and the download seems to be surprisingly slow, as if vim.org is experiencing a lot of traffic right now.
If you are having trouble getting the download from https://www.vim.org/download.php to work, there is a list of mirrors that you can try.
Once you get the windows installer, use the 'full' installation type option for best results.
You can download from here, it's working

Is there an GUI for Mercurial that makes my life really easy?

Can you recommend one over another?
For Windows and Linux (It also partially work on Mac, look at the comment of Nicholas Riley to this answer) there is TortoiseHG clone of the excelent TortoiseSVN
The great thing about theses two is that they are integrated in the shell (Windows Explorer or Nautilus). You see small icons over your files and folder that inform you about the status of your file in regards to the repository and you have a collection of commands/tools accessible from the context menu on theses files.
I like Murky. There is another that's okay but not quite as good called SourceTree.
There's also MacHg, which I was introduced to recently.
Take a look at mercurial page for GUI tools and integrations to IDE: https://www.mercurial-scm.org/wiki/OtherTools
For Windows I use HgWin tool (http://www.newsupaplex.pp.ru/hgwin_news_eng.html), which provide a GUI for the most of mercurial commands. It is similar to hgtk, but uses mercurial command line client (hg.exe) as backend.

GitHub noobian, should I install msysGit or Cygwin?

I intend to use GitHub with Git Extensions and possibly integrate with FogBugz (optional).
Looking at the download page and reading some rather technical half related questions I wanted to see what you thought would be better to install on Windows 7, given I want to integrate with Visual Studio 2008 (thinking this would be through GitExtensions).
A straight answer (msysGit or Cygwin?) between the two would be great but any more no brainer advice on starting out on GitHub would be welcome, or if indeed I've missed the mark entirely (does it matter which?). Will be importing from Subversion.
Cygwin's was the officially recommended one last time I checked, but I think msysgit might have caught up now. I'm using TortoiseGit with msysgit, and it seems to work fine. Recommended.
In my experience, Cygwin is much better: Windows Git Tutorial: Cygwin, SSH and Projectlocker.
If you used TortoiseSVN with Subversion you might want to take a look at TortoiseGit, TortoiseSVN's Git version.
Git Extensions requires msysGit. The "Complete" installation has msysGit and KDiff3 packed with it.
As for the versus, the only major difference I know of is that msysGit doesn't support git-daemon, yet. Since you're using GitHub, this shouldn't affect you much.
Never found the previous options that great for Windows and had used mercurial for quite some time instead.
Now GitHub have done github:windows and after just a little use it is very impressive. It's a well thought out product and think will greatly extend GitHub usage on windows.

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:

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