Github?

EOLs must be configured locally. Yes it may be a problem. (BTW in VCMI repo EOL are not configured too and it`s annoying sometimes)

Re: merge tools

One of my teammates recommends kdiff3 for git merges. Other popular ones, according to a quick Google search, are DiffMerge and Beyond Compare. So, you can get the side-by-side this-or-that capability with git, it’s just not built in.

Erik

You can try Code Compare (there is free version), Meld (open source, but kind of difficult to set-up on Windows) or Araxis Merge (not free, but it was great back in the days I wast used it) .

TortoiseGit has the same diff tool as TortoiseSVN, doesn’t it?

A user perspective - just to share, I tried the svn co to checkout the vcmi repo. but was unable (svn at some point keeps/kept hanging) . with the git clone I was able to d/l the whole repo. in a jiffy.

shirish, AFAIR you are the first one unable to checkout our SVN repo. Maybe sourceforge had a little downtime?

Some time passed, have you changed your mind perhaps about git?
I’ve created two pull requests to the github mirror, you can see how easy it is to hop-on and help out with a project that you’re not a member of. github.com/vcmi/vcmi/pulls
There are simply many more advantages to git over svn.
Git is integrated into all major IDEs (usually with plugins): ms vs, qt creator, eclipse, you name it. For windows you have all the GUI you would like (although I don’t bother with graphical clients, so I can’t really have any opinion on them): TortoiseGIT, github’s client, msysgit (I believe it ships with gitk), SmartGit, Git Extensions.
Regarding diff/merge tools, I don’t quite see the problem here - can’t you just use whatever you’re used to? Simply set it as your default tool and that’s all. If you don’t have any, you can try (g)vim + fugitive plugin.
If you need any git-related help, I hope I can answer your questions.
Thank you

Well, we are on Git already - at least I started to use this view since Sourceforge Trac is gone :frowning:
github.com/vcmi/vcmi/commits/master

This is only a read-only mirror (from what I can see), you still have to go through svn to get the code “out there”.
Are you considering swtiching to git as your main repository?
Pull requests, instant logs/blames, offline commits, local branches, merges done right… all that is within your reach :wink:
Also, found some more git clients, one that i might even be interested in trying out, from atlassian (guys that brought jira and some other tools): collab.net/giteyeapp

Hi,
yes, migration to Git is something we consider and I am generally supportive. Git provides better support for several important use-cases. However, there is no strong sentiment to move among VCMI developers. (At least I haven’t heard any.) There is also no single incentive strong enough to make me pursue this on my own. And migration is a cost — of my time to do the moving and of developers needing to learn how to use a new VCS.

I believe that sooner or later we will move to Git. I have however not such plans for immediate future. Feedback from other developers might change this.


The one thing is a decision of SVN to Git transition, the another thing is selecting a hosting service. I don’t know if Github is such an obvious choice. * There are many providers, we should compare them and pick wisely. We will likely be stuck with it for a long time.

I find it very annoying to use stand-alone VCS client applications. You listed as a Git feature an instant blames. However, with such clients it is by no means “instant”. I need to leave IDE, click through another window, search for the file I want to have annotated, look for the blame command… and then scroll the file to the point I was then. Gosh, by that point I don’t remember what I wanted to check. If I had a proper Git plugin in the VS I would just pressed a keyboard shortcut to annotate the file I’m currently viewing. This is what I call instant.

Microsoft has added built-in Git support in VS 2013 (and similar plugin for 2012) and I had high hopes in it. It is really great when it works. Yet, it misses important features (blame, stash, etc.) and feels like an alpha. It is still very nice as a addition to other tools. I use it when I can, falling back to Tortoise Git when I have to. [Tortoise Git is an UI-design abomination, however it allows me to do everything I need.]*

All I need and all I care is simple one-click client like Tortoise SVN. It’s windows shell plugin handled by right-click menu, so I don’t need to open any new applications and what not. Certainly entering anything from command line is a big NO for me.

Tortoise Git is very similar to Tortoise SVN and you certainly don’t need to resort to command line.
My issue with Tortoise Git is that Git provides more options than SVN and fitting them into the GUI… does not produce nice experience and can be intimidating at first. [And help is not helpful since it relies on a whole lot of Git nomenclature.]

Well, reportedly Github also provides an SVN interface for Git repos, so it should be possible to still use Tortoise SVN. I don’t know however if it is complete or how well does it work.

I see your point regarding blames. To be honest I’m quite surprised there is no integration with VS, I was under impression that it is somewhat popular IDE. Clearly, I must’ve been wrong.
I’m sorry to hear that, but that is not something I’m capable of fixing, I can only wish that it will be implemented soon enough.
I referred to all history being available locally when I mentioned instant blames.
Github indeed has support for svn clients, but I have not heard anyone using that, so I can’t really vouch for that, albeit it would be great for an intermediate solution. You could simply change your svn server (it is writeable) and this would allow you to continue working as usual, while enabling all git power for those who use it already. When you’re ready you’ll just replace your svn client with git one and that’s all :slight_smile:
help.github.com/articles/suppor … on-clients
github.com/blog/966-improved-su … nt-support)
From the same blog, be sure to check all the awesomeness github provides for all hosted projects: github.com/blog/category/ship

Seems that there is at least one nice incentive - github community. While I’m somewhat neutral on VCS github may give us some activity on development side (at least in form of irregular patches/pull requests). And besides I won’t mind having an actual reason to learn how to use git myself :slight_smile:

Perhaps we should consider moving to git for next release? Or switch to git once VS 2013 becomes required for vcmi (one with built-in git support)?

I have no preference regarding SVN or Git. We can move to Git and Github, from side it’s OK.

Thanks for bringing this up, I support moving to Git. I’ll soon make topic summing up the discussion and asking for the final feedback.

We do not need to wait for VS 2013. VS did not provide any built-in support for SVN whatsoever, so Git won’t make things worse here. Quite the opposite.

[As a side note — I’d love to kill VS 2012 support anyway. I’ve been waiting for Boost 1.56 that was to be released a month ago. However, it seems that their release schedule collapsed… after they moved to Git. :stuck_out_tongue: ]

+1 for GitHub.

Just thought that built-in support will give a few more point towards git support :slight_smile:

[side note - when you’re going to kill VS 2012 support feel free to kill support for gcc 4.6 as well - last Linux distro without 4.7 will get new release in April]

I’ve seen new branches on github, does it mean you recognise it as “official” repository now?

Actually we just did. Currently the github.com/vcmi/vcmi is the official VCMI repository.