Graal Forums  

Go Back   Graal Forums > Development Forums > Future Improvements
FAQ Members List Calendar Search Today's Posts Mark Forums Read

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 08-08-2008, 03:42 AM
Novo Novo is offline
[TServerDeveloper]
Join Date: Jun 2006
Posts: 448
Novo will become famous soon enough
Version Control?

Version Control is necessary in any dynamic ever-changing system. It allows for developers to experiment with code and continuously develop without fear of deleting things by accident. Additionally, it'd serve as an ever-lasting backup.

How it can be implemented... For this, I'll use GIT, as it is my personal preference.

Alright -- In GIT, you are given a distributed repository. In the sense, you can develop in different environments. So... First, you'd declare a server a 'working copy' That is to say... The npcs, scripts, and weapons folder are added to the git repository. To make things clean, you'd add a .git-ignore file to the npcs system that would ignore local npcs.

Then, add to NC GIT commands. That is to say... 'git commit -a -m "Fixed bugs"' would be '/git commit -a -m "Fixed bugs"' in RC.

This way... The server can do a wide variety of things supported by git. For instance, /git merge debug, /git log, /git pull, /git push

This way... You'd be able to sync work done on debug and main without having to constantly work on the overhead of keeping both servers up to date. It also solves the problem of merging common fixes to both debug and main.

To add to this flexibility, you can easily allow external editors: They just work with git's system: git pull to get the latest changes from the server, then edit edit edit, and git push to put their work back onto the repository... where they can easily git pull from the server to see the work displayed.

I know that most people don't understand and use version control, but its a blessing when complexity within an environment is too high to work with: Changing massive systems on Zodiac requires delicate and thoughtful edits... And doing anything substantial requires it to be done in large chunks. The turn-off is that Zodiac-Debug is always out of sync with Zodiac... So work is lost when some people edit vital components of the system on Zodiac and don't remap it to Zodiac-Debug. In the end, it just makes bugs appear out of no-where. (Half-implemented systems due to overwriting changes in one system)

This is actually my single-most wanted feature. It is an eye-opener when you start using version control effectively... And additionally, serves as a way that new programmers can understand how things work: By looking at the commit message, they can then see the changes required to make the commit message... This serves as a self-documenting 'how-to' guide.
Reply With Quote
  #2  
Old 08-08-2008, 03:44 AM
cbk1994 cbk1994 is offline
the fake one
cbk1994's Avatar
Join Date: Mar 2003
Location: San Francisco
Posts: 10,718
cbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond reputecbk1994 has a reputation beyond repute
Send a message via AIM to cbk1994
I agree, this would be very nice to have on Graal.
__________________
Reply With Quote
  #3  
Old 08-08-2008, 03:44 AM
Inverness Inverness is offline
Incubator
Inverness's Avatar
Join Date: Aug 2004
Location: Houston, Texas
Posts: 3,613
Inverness is a jewel in the roughInverness is a jewel in the rough
Version control is something I would like myself.

That and SQLite.

Having a large server with multiple scripters is pretty chaotic, whatever can be done to assist with modularity and such is great.
__________________
Reply With Quote
  #4  
Old 08-08-2008, 04:33 AM
DrakilorP2P DrakilorP2P is offline
Registered User
DrakilorP2P's Avatar
Join Date: Apr 2006
Posts: 755
DrakilorP2P is just really niceDrakilorP2P is just really nice
Yes please.
Reply With Quote
Reply

Tags
git, version control

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 10:53 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Copyright (C) 1998-2019 Toonslab All Rights Reserved.