Gamestudio Links
Zorro Links
Newest Posts
zorro 64bit command line support
by 7th_zorro. 04/20/24 10:06
StartWeek not working as it should
by jcl. 04/20/24 08:38
Data from CSV not parsed correctly
by jcl. 04/20/24 08:32
Zorro FIX plugin - Experimental
by jcl. 04/20/24 08:30
folder management functions
by VoroneTZ. 04/17/24 06:52
lookback setting performance issue
by 7th_zorro. 04/16/24 03:08
Zorro FIX plugin - Experimental
by flink. 04/14/24 07:46
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
3 registered members (7th_zorro, Aku_Aku, 1 invisible), 579 guests, and 1 spider.
Key: Admin, Global Mod, Mod
Newest Members
EternallyCurious, howardR, 11honza11, ccorrea, sakolin
19047 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Using Git for Version Control #472756
05/21/18 04:30
05/21/18 04:30
Joined: May 2005
Posts: 868
Chicago, IL
Dooley Offline OP
User
Dooley  Offline OP
User

Joined: May 2005
Posts: 868
Chicago, IL
On the Indie Game Developers Facebook page, everyone seems to recommend using "Git" to manage different versions of a game. As a solo developer, I don't really see this as necessary, but I am open to other opinions and reasons why I should consider it.

Is anyone using git or some other similar type of repository? Are these things compatible with 3DGS projects?

Re: Using Git for Version Control [Re: Dooley] #472759
05/21/18 08:30
05/21/18 08:30
Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
Kartoffel Offline
Expert
Kartoffel  Offline
Expert

Joined: Jun 2009
Posts: 2,210
Bavaria, Germany
at it's base, git is just something that keeps track of your project's files and remembers all changes / versions you uploaded. there is more complex functionality (branch and merge, etc.) but as it's mostly working with the files themselves I don't see why it should be incompatible with anything.


POTATO-MAN saves the day! - Random
Re: Using Git for Version Control [Re: Kartoffel] #472766
05/21/18 10:49
05/21/18 10:49
Joined: Oct 2007
Posts: 5,210
İstanbul, Turkey
Quad Offline
Senior Expert
Quad  Offline
Senior Expert

Joined: Oct 2007
Posts: 5,210
İstanbul, Turkey
IMO, Git or some other VCS is pretty much necessary for anything more complex than a fast weekend prototype. Also it's a must if you have more than 1 person touching the code.

I do not know how it would fare for binary files (Models,levels,textures etc) but for source code and other text git is the king. It does not matter which language/engine you use. For git a text file is a text file.

You can create free private repos on bitbucket.org and free open-source(public) git repos on github.com

For a single developer i'd suggest a simple branch/tag system, like one master, one development and an occasional snapshot of the master as a version.

Like, do all your development work on development branch, as you complete features merge them to master and from time to time take snapshots of master and version them like v1, v1.1 v1.2 and so on.

This means, at any given moment, master is working / compiles correctly, and nothing is half finished or under development there. You work on dev branch, and once something is done/complete merge it to master.

Also read-up a little on git. Some people do single commit everyday after they are done for the day, this could work as simple code backup system but not what git is actually for. Commit every change related to a single feature as it's own commit (so the work you done on every feature is a separate commit) and push them to development branch every evening instead. This way you can roll-back/shelf a single feature 3 days later and do not have to roll everything you did in that past 3 days back. Once your features are done and you deem current development branch is fit to be merged to master merge it. For a larger team i would merge each feature separately to master, but for a single developer that's too much branches and starts getting too time-consuming and micro-managey so i think it's ok for a single dev to occasionally merge latest dev state to master.

Also do not try to do what i explained with 10 lines of code or try to set up this stuff before you actually start working. Work on your project first, when you reach a point you think you need to back it up, open a repo on bitbucket, push everything to master, keep working and pushing everything to master until you think your project is grown enough to utilize the branching system i explained, check everything is ok with your project and start a development branch and go from there as i explained above.

ALSO half of what i said is bullshit depending on who you ask. So, as i said, read up on it.





Last edited by Quad; 05/21/18 10:57.

3333333333

Moderated by  HeelX, Lukas, rayp, Rei_Ayanami, Superku, Tobias, TWO, VeT 

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1