Irrlicht source (and git)

Discuss about anything related to the Irrlicht Engine, or read announcements about any significant features or usage changes.
ACE247
Posts: 704
Joined: Tue Mar 16, 2010 12:31 am

Re: Irrlicht source (and git)

Post by ACE247 »

I use the Linux command line version of svn. And really its more than enough, even at Crytek they use SVN...
Actually I also dislike the name git, it just sounds replusive/irritating. What do you have with git? Did you grow up with it?
If apple made a git version with their famous 'i' infront, it would mean yuck/eww in german :D
Call it 'wit', make it as simple as it needs to be and I might be interested. :wink:
EDIT: not to forget, maintaning a large GIT system is a proper nightmare due to its distributed architecture. Where as most other REvision control systems are Centralised client <-> server systems and far more effective. I also know Linux Torvalds came up with Git, but that doesn't mean just because he's my hero I have to use it. (He isn't my Hero, by the way, but he has my respect)
ent1ty
Competition winner
Posts: 1106
Joined: Sun Nov 08, 2009 11:09 am

Re: Irrlicht source (and git)

Post by ent1ty »

ACE247 wrote:I also dislike the name git, it just sounds replusive/irritating.
It's supposed to do that: http://www.thefreedictionary.com/git
irrRenderer 1.0
Height2Normal v. 2.1 - convert height maps to normal maps

Step back! I have a void pointer, and I'm not afraid to use it!
hybrid
Admin
Posts: 14143
Joined: Wed Apr 19, 2006 9:20 pm
Location: Oldenburg(Oldb), Germany
Contact:

Re: Irrlicht source (and git)

Post by hybrid »

Naming is largely irrelevant, as long as the names are short and can be easily used from command line. The point with git is that you cannot do the common things easily. You have a multitude of features that no one ever needs and have the full possibility of wrecking your repository at a finger tip. I've already lost some revisions and even a complete repository by calling some commands in the wrong order, using --force at the wrong places, and other things. And if you don't really lose the code for real, you push some commits to a branch unintentionally and never find it again. I also see no reason why we would need distributed branches. SVN can also do branches, which we use for both experimental branches and stable branch bug fixing. As ACE247 says, it would simply become more management for us to keep all those things together and providing the main repository.
@hendu: line end format is fixed to windows line ending, so there's definitely no problem at this point.
CuteAlien
Admin
Posts: 9734
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: Irrlicht source (and git)

Post by CuteAlien »

It wouldn't make much of a difference for us when working on the engine. But I think one of the main points behind a distributed source control systems is that it would make it easier for users which are modifying the engine and which are not in the team. With git or mercurial they can easily branch, merge and keep their changes under sourcecontrol just like if they were in the core-team, except that they can't push changes back to our server. But they can even offer it on an own server and ask us to pull changes from them.

Anyway - so far I'm fine with svn, but when a distributed version control system will be used I would probably prefer Mercurial simply because I've worked with it already more. Then again I heard git is not so different, so I probably could also get used to that.
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
hendu
Posts: 2600
Joined: Sat Dec 18, 2010 12:53 pm

Re: Irrlicht source (and git)

Post by hendu »

@hybrid: then why is the repo in such a mess after a default svn checkout?

Some files are DOS, some are unix, and some are a mix (!). The SVN checkout doesn't even compile by default because of that.


@CuteAlien
Yeah, SVN workflow is not so convenient for contributors. How do you save your work (do a local commit)? You can't. How do you create local branches, to work on many things at once? You can't.
mongoose7
Posts: 1227
Joined: Wed Apr 06, 2011 12:13 pm

Re: Irrlicht source (and git)

Post by mongoose7 »

You can't check it out multiple times?

I just can't understand why a single user would want/need a versioning system.
hendu
Posts: 2600
Joined: Sat Dec 18, 2010 12:53 pm

Re: Irrlicht source (and git)

Post by hendu »

You can't check it out multiple times?
You can. But that's a huge waste of space. Do you really want to make a manual new checkout for each feature you work on?
Also more manual work.
I just can't understand why a single user would want/need a versioning system.
Then you've never used a distributed one. I tell you, once you do, you never go back.

The convenience for your own projects is just magnitudes over doing things manually. Want to know which change broke thing X? Want to check out last week's state? Work on a possibly radical change, without disrupting the main state in case it turns out bad? Even draw pretty stats on say, lines/day you've done ;)
Offsite backups are easy. And any backup includes the full history.
anylo
Posts: 71
Joined: Mon Feb 20, 2006 11:14 am

Re: Irrlicht source (and git)

Post by anylo »

mongoose7 wrote:I just can't understand why a single user would want/need a versioning system.

Code: Select all

$ cd my_secret_project
$ git init
$ git add .
$ git commit -a -m "My secret project uses now version control system called git."
I just can't understand why a single user wouldn't need a versioning system. Even Gource is a good excuse to use one.
CuteAlien
Admin
Posts: 9734
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: Irrlicht source (and git)

Post by CuteAlien »

hendu wrote:@CuteAlien
Yeah, SVN workflow is not so convenient for contributors. How do you save your work (do a local commit)? You can't. How do you create local branches, to work on many things at once? You can't.
I've not worked yet with git, but at least Mercurial actually has svn support, so you can work locally with Mercurial. I'm pretty sure the same exists for git.
hendu wrote: I tell you, once you do, you never go back.
Have an upvote :-) I think one of my favorite features of version control systems is the log. Make a good commit-message and you can always check-back why you wrote certain code.
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
hendu
Posts: 2600
Joined: Sat Dec 18, 2010 12:53 pm

Re: Irrlicht source (and git)

Post by hendu »

I've not worked yet with git, but at least Mercurial actually has svn support, so you can work locally with Mercurial. I'm pretty sure the same exists for git.
Yes, but a) it's an ugly hack b) it wouldn't work, because of the line ending situation outlined above.
hybrid
Admin
Posts: 14143
Joined: Wed Apr 19, 2006 9:20 pm
Location: Oldenburg(Oldb), Germany
Contact:

Re: Irrlicht source (and git)

Post by hybrid »

I'm working with MSVC, which would warn me each time I open a unix ending file and convert those automatically. Didn't ever see this for a few month now. So I think all those issues are fixed already. Moreover, you sem to have a full SVN checkout on your PC, probably including all old releases and tags. There's a good chance that everything before 1.7 still has some files with mixed line endings. The OSX files for sure. But I don't see any problems arising from this issue anymore. Moreover, I also compile continuously on Linux, Solaris, and OSX, which also never had any problem. Maybe you wreck the files when importing into your git system?
RdR
Competition winner
Posts: 273
Joined: Tue Mar 29, 2011 2:58 pm
Contact:

Re: Irrlicht source (and git)

Post by RdR »

There is a Git repo of the latest irrlicht: https://github.com/zaki/irrlicht
anylo
Posts: 71
Joined: Mon Feb 20, 2006 11:14 am

Re: Irrlicht source (and git)

Post by anylo »

Let's do a quick listing about popular (gaming) libraries and what version control system they are using:
  • Irrlicht: Subversion
  • LWJGL: Subversion
  • Ogre3D: Mercurial
  • Pygame: Mercurial
  • Pyglet: Mercurial
  • SDL: Mercurial
Dammit, nobody is using Git.
hendu
Posts: 2600
Joined: Sat Dec 18, 2010 12:53 pm

Re: Irrlicht source (and git)

Post by hendu »

hybrid wrote:Moreover, I also compile continuously on Linux, Solaris, and OSX, which also never had any problem. Maybe you wreck the files when importing into your git system?
I only have svn checkouts of 1.7 and trunk, separately. Both have no changes at all from upstream, neither has been imported to git or any other system.

This is the state of the trunk checkout:
$ svn info | grep Rev
Revision: 4050
$ svn status
$ file include/SV*
include/SVertexIndex.h: ASCII C++ program text
include/SVertexManipulator.h: ASCII C++ program text, with CRLF line terminators
include/SViewFrustum.h: ASCII C++ program text, with CRLF line terminators
Just a small sample of all the files. If I had touched the line endings myself, svn status would show those files as changed.
CuteAlien
Admin
Posts: 9734
Joined: Mon Mar 06, 2006 2:25 pm
Location: Tübingen, Germany
Contact:

Re: Irrlicht source (and git)

Post by CuteAlien »

@hendu: Well yes, it's consistently using CRLF (you can also check all other headers). This does not compile for you?

edit: Oh wait a second - SVertexIndex.h doesn't have this in your case? That's indeed strange, it's the same here as the rest and the svn property eol-style for it is set to CRLF.
IRC: #irrlicht on irc.libera.chat
Code snippet repository: https://github.com/mzeilfelder/irr-playground-micha
Free racer made with Irrlicht: http://www.irrgheist.com/hcraftsource.htm
Post Reply