Advertisement
Civilization Fanatics' Center  

Welcome to Civilization Fanatics' Center.

You are currently viewing our site as a guest which gives you limited access to our site features. By joining our free community, you will be able to participate in the discussions, search the forum, send private messages, vote in polls, upload your own screenshots to the gallery, and access many other special features. Registration is fast, simple and absolutely free, so sign up today! If you have any problems with the registration process or your account login, please contact support.

Go Back   Civilization Fanatics' Forums > CIVILIZATION IV > Civ4 - Colonization > Civ4Col - Creation & Customization > Civ4Col - Project & Mod Development > Religion and Revolution

Notices

Reply
 
Thread Tools
Old Oct 16, 2011, 10:09 AM   #1
raystuttgart
Civ4Col Modder
 
raystuttgart's Avatar
 
Join Date: Jan 2011
Location: Stuttgart, Germany
Posts: 3,169
[Religion and Revolution]: Subversion

This thread is an internal thread meant for the Religion and Revolution team.

To ensure easy cooperative work on our mod, we have set up a Subversion repository on a server.

Access is limited to our team and some selected partners.

Our releases will be published as download links.

If you have any problems or questions, please write a private message to me or Robert Surcouf.
(Both of us have admin rights.)

Last edited by raystuttgart; Aug 21, 2012 at 07:18 AM.
raystuttgart is offline   Reply With Quote
Old Oct 16, 2011, 10:10 AM   #2
raystuttgart
Civ4Col Modder
 
raystuttgart's Avatar
 
Join Date: Jan 2011
Location: Stuttgart, Germany
Posts: 3,169
Getting started

1. Getting an account

In order to get an account, you need to send me or Robert your eMail-address.
With this eMail-address, we will be able to invite you to the SVN.

Once you get the invitation, you can create your user and give it a password.

This user will be needed to access our repository.

2. Installation of SVN client

I strongly suggest you get Tortoise SVN client.
(Preferably English version, because it will make it easier for us to give you support if you are not experienced already.)

The SVN client will be needed to check out our workspace.

3. Checking out the current workspace

A) Create a new folder which will become the local "copy" of our workspace.
(I created in on the desktop and called it "RaR SVN", but it is your choice of course, where to create or how to name.)

B) Connect the folder to SVN-Repository.
Rightclick the new Folder ("RaR SVN" in my case) and choose "SVN Checkout".
Then enter this address:
https://subversion.assembla.com/svn/...nd_revolution/
and click "Ok".

By following these 3 simple steps you will have created your local workspace and will be able to get the current work of the team or make your own changes to it.

4. Folder structure

There are 3 main folders in our repository.

last_release:
This folder is usually read only.
It is a backup of the last published release, where you can always get old files if you broke something in your implementation.
It will also be used to build / package our releases.

transfer:
This is an all purpose exchange folder.
Everything that is not directly part of the upcoming release can be exchanged here.
(Graphics, Gamefonts of other mods, sources, ...)
Whenever you want to give something to another team member, use this folder.

Religion_and_Revolution:
This is the place, where we are building the current upcoming release.
Please only check in things where you are pretty sure, that they will not totally break the mod.
(Meaning, it will not start anymore.)
Of course, there will always be minor bugs.

Last edited by raystuttgart; Apr 20, 2013 at 12:30 PM.
raystuttgart is offline   Reply With Quote
Old Oct 16, 2011, 10:32 AM   #3
raystuttgart
Civ4Col Modder
 
raystuttgart's Avatar
 
Join Date: Jan 2011
Location: Stuttgart, Germany
Posts: 3,169
Modifying Data / Commiting Changes

1. It is important that you always get the latest version of work before you start making your own changes.

Right click on Folder and choose "SVN Update".

2. Do your modifications.

If somebody else has made changes in the same file you want to do changes too, since you last checked out, then you should manually adjust the file and do a merge.

If there were no changes of another user, then you can simply replace the file.

3. Check in your changes to the repository (server)

Right Click and choose "SVN Commit".

4. You will be asked to write some comment / explanation of your changes.

Please do so.

Use commenting in this style:
User, date: reason, additional comment

Example:
ray, 16.10.2011: Included Feature "Bargaining with Natives", tested ingame

Deleting
(This is important !)

If you want to remove a file from the repository, then do not simply delete it, like you are used to from working in folders with explorer.

Use
-> Right Click on File -> Tortoise SVN -> Delete

Only this will really remove a file from the repository on the server.

Last edited by raystuttgart; Oct 16, 2011 at 11:05 AM.
raystuttgart is offline   Reply With Quote
Old Oct 16, 2011, 10:33 AM   #4
raystuttgart
Civ4Col Modder
 
raystuttgart's Avatar
 
Join Date: Jan 2011
Location: Stuttgart, Germany
Posts: 3,169
Tips and Tricks, Advices

1. Go to the homepage of our SVN-Repository if you want to know which changes have happened recently.

http://www.assembla.com/code/religio...bversion/nodes

There you will find the Tab "Stream" with a list of changes by date and also showing the comments.

2. Please check in one complete feature in a single commit if possible.

Do not check in features in many pieces.
Do not check in many features at once.

It will make it a lot easier for others to understand.

3. Keep your local copy of the SVN and your mod-folder separated !

You will implement and test features in your mod-folder probably.
But do not mix this with the local copy of the SVN.
This has caused many many problems in the past.

Your local copy should really only be used for checking out changes of others and commiting your own.

4. Update your local copy regulary.

It has proven, that if you do so, mistakes (like working on outdate files) happen a lot less.

Last edited by raystuttgart; Oct 16, 2011 at 10:43 AM.
raystuttgart is offline   Reply With Quote
Old Oct 16, 2011, 10:44 AM   #5
raystuttgart
Civ4Col Modder
 
raystuttgart's Avatar
 
Join Date: Jan 2011
Location: Stuttgart, Germany
Posts: 3,169
Advanced

1. Reverting changes in the local copy

You have accidently modified a file you did not want to ...
No problem.
-> Right Click on File -> Tortoise SVN -> Revert Changes

You will have the last version from the repository again.

2. Reverting changes in the repository on the server

You have accidently modified a file you did not want to and uploaded it already to the server.
No problem either.

Tell us (me and Robert) and we will be able to repair / revert.

3. Locking files

It is possible to lock files so that others cannot change these.

-> Right Click on File -> Tortoise SVN -> Get Lock

This could be useful in 3 cases:

A) The file / your work is very complicated and merging would be a lot of work.
B) Merging is simply not possible (binaries, graphics, ..)
C) You simply want to notify the others that you are working on that file (locking can be used for communication)

Do not forget to unlock after you are done.

-> Right Click on File -> Tortoise SVN -> Release Lock

4. Breaking locks

You want / need to work on a file, but it is locked.

1. The Client will tell you, who locked the file.
Try to communicate with that person.

2. If you cannot contact the person, tell me or Robert.
(We can break all locks, because we are admins.)

5. Getting Advance Informations

Please try these and see, which Informations you will get.

-> Right Click on File -> Tortoise SVN -> Diff
-> Right Click on File -> Tortoise SVN -> Show log
-> Right Click on File -> Tortoise SVN -> Revision Graph
-> Right Click on File -> Tortoise SVN -> Check for Modifications

6. Learn to understand the icons at the files and folders.
(Here is a list of what they mean.)

Last edited by raystuttgart; Oct 16, 2011 at 10:59 AM.
raystuttgart is offline   Reply With Quote
Old Oct 16, 2011, 11:02 AM   #6
raystuttgart
Civ4Col Modder
 
raystuttgart's Avatar
 
Join Date: Jan 2011
Location: Stuttgart, Germany
Posts: 3,169
First Experiences

1. You can always ask me, if you have any questions.

2. Also, feel free to use the folder "transfer" for experimenting.

3. Do not be afraid.
It is not that difficult and nothing can really happen.
raystuttgart is offline   Reply With Quote
Old Oct 29, 2011, 01:15 AM   #7
Robert Surcouf
Civ4Col Modder
 
Robert Surcouf's Avatar
 
Join Date: Feb 2011
Location: France
Posts: 665
Oh! I have a "technical" question. One of these days we will add .cpp files and probably CvGameCoreDLL.dll

Do we both compile CvGameCoreDLL.dll separately, or is one of us "Chief DLL" or "Master of C++"?
How are we sure we haven't mixed up the cpp files? I mean what happens if we are both working on different cpp files?
__________________
Religion and Revolution
Robert Surcouf is offline   Reply With Quote
Old Oct 29, 2011, 02:28 AM   #8
raystuttgart
Civ4Col Modder
 
raystuttgart's Avatar
 
Join Date: Jan 2011
Location: Stuttgart, Germany
Posts: 3,169
Quote:
Originally Posted by Robert Surcouf View Post
Oh! I have a "technical" question. One of these days we will add .cpp files and probably CvGameCoreDLL.dll

Do we both compile CvGameCoreDLL.dll separately, or is one of us "Chief DLL" or "Master of C++"?
How are we sure we haven't mixed up the cpp files? I mean what happens if we are both working on different cpp files?
No, there is no necessity for a "Chief of DLL".

First of all we should still have some communication, so we should know when both of us are working on DLL.
(We should let each other know what we are currently working on.)

Otherwise it is pretty simple.

------------------------------

DLL-sources will be checked into our subversion too, of course.

However only generally working revisions are checked into "work" (development of next release).
(Nothing that will totally crash the mod or crash compilation.
Of course there will be bugs. )

For experiments or exchanging not working sources, we use "transfer".

------------------------------

Doing a feature:

1. Check for latest sources in SVN before you start a feature and use these as base for your own development.
Simpy do SVN Update.

2. Develop your feature and do at least basic developer tests.

3. Before commiting the feature, check if somebody else has done anything that affects the sources you want to commit.
With DLL this is always the case, because you would at least have to do a new compilation of CvGameCoreDLL.dll.
Simpy do SVN Update again to see if there were changes since you started your feature.

4. If this is the case, then you will need to merge the sources of the other into your workspace and compile it again.

5. After compilation and developer tests were successful commit the merged version.
(Merged sources and new compiled DLL.)

------------------------------

Summary:

It is important to check SVN if there was an update before every commit and very useful to do before starting a feature.
(Simpy do "SVN Update".)

The implementer committing his stuff is responsible to merge it into the existing "work"
and do at least basic developer tests to ensure mod is still working.

Last edited by raystuttgart; Oct 29, 2011 at 02:42 AM.
raystuttgart is offline   Reply With Quote
Old Dec 14, 2011, 10:58 AM   #9
Gomer_Pyle
Prince
 
Join Date: Aug 2008
Posts: 348
Is it possible to rename the folder you download from SVN-Repository "TAC 2.02a_inoffiziell" to "Religion and Revolution" or something else maybe?
Gomer_Pyle is offline   Reply With Quote
Old Dec 14, 2011, 11:09 AM   #10
raystuttgart
Civ4Col Modder
 
raystuttgart's Avatar
 
Join Date: Jan 2011
Location: Stuttgart, Germany
Posts: 3,169
Quote:
Originally Posted by Gomer_Pyle View Post
Is it possible to rename the folder you download from SVN-Repository "TAC 2.02a_inoffiziell" to "Religion and Revolution" or something else maybe?
The one in "Preview" you are talking about really is only a Preview of my work after I left TAC.

I used "TAC 2.02a_inoffiziell" as base at that time and currently still prepare my features in there until we have TAC 2.02c as base.
It is my experimental platform.

This is not Religion and Revolution and also not the base for it.
(Thus I did not call it like that. )

We will start to create Religion and Revolution from a clean TAC 2.02c and integrate our features step by step.

Last edited by raystuttgart; Dec 14, 2011 at 11:20 AM.
raystuttgart is offline   Reply With Quote
Old Dec 26, 2011, 02:28 AM   #11
Gomer_Pyle
Prince
 
Join Date: Aug 2008
Posts: 348
I had this right but messed it up. What do you put in "URL for Repository" so you can download only the last preview? I put this https://subversion.assembla.com/svn/...nd_revolution/ in and it downloaded the whole workspace then. :S

Edit: Figured it out. You could go into Repository Browser and find the folder you are looking for and select "Checkout". Just for future referance.

Last edited by Gomer_Pyle; Dec 26, 2011 at 02:32 AM.
Gomer_Pyle is offline   Reply With Quote
Old Mar 03, 2012, 11:46 PM   #12
agaro
Warlord
 
agaro's Avatar
 
Join Date: Sep 2010
Posts: 138
Quote:
Originally Posted by raystuttgart View Post
Getting started

4. Folder structure
There are 3 main folders in our repository.

last_release:
This folder is usually read only.

transfer:
This is an all purpose exchange folder.

work:
This is the place, where we are building the current upcoming release.
Hi Guys,
Can I get an update on the folder structure please?

Because of space limitations on my home notebook, I hadn't downloaded all the SVN files till this week (after getting much bigger new hard drive, yay!).

The SVN structure now is:
- last release folder (which is empty, presumably because we don't have a release yet)
- transfer (presumably the original transfer folder as described)
- religion and revolution (I presume this is the new name for the previous "work" folder).

So I loaded the religion and revolution folder into the mods folder and it ran. Looks good, great job guys.
So my questions:
- Is this the version I am supposed to be commenting on?
- Do I comment on anything, or on just a few things? For example there may be a few things that you know about but will address at a later date?
- Do I make my comments in the relevant thread on this forum or somewhere else?
- Does anyone have a suggestion of where you would like me to help?

[imagine a smilie rolling up his sleeves here]
agaro is offline   Reply With Quote
Old Mar 04, 2012, 04:33 AM   #13
raystuttgart
Civ4Col Modder
 
raystuttgart's Avatar
 
Join Date: Jan 2011
Location: Stuttgart, Germany
Posts: 3,169
Quote:
Originally Posted by agaro View Post
- last release folder (which is empty, presumably because we don't have a release yet)
Yes, this folder will later contain our last release as kind of "backup".

Quote:
Originally Posted by agaro View Post
- transfer (presumably the original transfer folder as described)
Yes, please use this to exchage everything that is not directly (yet) included into the mod.

Quote:
Originally Posted by agaro View Post
- religion and revolution (I presume this is the new name for the previous "work" folder).
Yep, that is where our development takes place.

Quote:
Originally Posted by agaro View Post
So I loaded the religion and revolution folder into the mods folder and it ran.
Just for safety:
Please keep repository copy and mod you are playing on separated !

Quote:
Originally Posted by agaro View Post
Looks good, great job guys.


Quote:
Originally Posted by agaro View Post
So my questions:
- Is this the version I am supposed to be commenting on?
- Do I comment on anything, or on just a few things? For example there may be a few things that you know about but will address at a later date?
- Do I make my comments in the relevant thread on this forum or somewhere else?
- Does anyone have a suggestion of where you would like me to help?
About commenting:

Currently we are not yet in finetuning phase.
Please report bugs / problems only for now.
We will work on balancing later on.

About helping:

Testing new features, when they are commited
Reporting bugs
Improving texts
Improving graphics
...
raystuttgart is offline   Reply With Quote
Old Mar 06, 2012, 06:52 PM   #14
agaro
Warlord
 
agaro's Avatar
 
Join Date: Sep 2010
Posts: 138
Some advice please:

New R & R mod files are being downloaded from SVN. It would be easiest if I could just sync my updated mod folder with the older version in the MyGames folder (I have software to do the 1-way sync OK).

If I do this will my existing test game still run? I would like to do this because it would be easier to test some things with a large game in progress rather than start another game from scratch.

Or should I load each updated set of mod files as a whole new mod into the MyGames folder - i.e. RAR1, RAR2, RAR3 etc.?
agaro is offline   Reply With Quote
Old Mar 07, 2012, 01:21 AM   #15
raystuttgart
Civ4Col Modder
 
raystuttgart's Avatar
 
Join Date: Jan 2011
Location: Stuttgart, Germany
Posts: 3,169
Because we are having a lot of changes a very high pace, it is very unlikely, that your savegames will still work a few revisions later.

Playing longer games however is currently not the focus, because we are not yet in balancing and finetuning phase.

For now we should focus on creating new features and explicitely testing these.
(Using Worlbuilder for example.)

When we enter balancing and finetuning phase, things will be different.
Then playing longer games will be important.
raystuttgart is offline   Reply With Quote
Old Mar 11, 2012, 01:08 PM   #16
Schmiddie
King
 
Schmiddie's Avatar
 
Join Date: Feb 2012
Location: Germany
Posts: 612
Hm, something went wrong with the update / SVN Commit. The flag_decal.dds data are now in the main folder, but they should be in the folger Assets/Art/teamcolor... and there is a questionmark on this file...

Sorry for that confusion....how can I delete this data?

EDIT: I have deleted the wrong files. But I'm not able to upload these files in the correct folder at the moment. The questionmark is still there...so the flags are don't work correctly at the moment.
__________________
Modder and Member of the Religion and Revolution Team

Last edited by Schmiddie; Mar 11, 2012 at 01:17 PM.
Schmiddie is offline   Reply With Quote
Old Mar 11, 2012, 01:58 PM   #17
raystuttgart
Civ4Col Modder
 
raystuttgart's Avatar
 
Join Date: Jan 2011
Location: Stuttgart, Germany
Posts: 3,169
@Schmiddie:

Are you going to clean up, or should I do it ?

Whenever you want to delete, please use the SVN-Command as described in this post.
(Tortoise SVN -> Delete)

Last edited by raystuttgart; Mar 11, 2012 at 02:04 PM.
raystuttgart is offline   Reply With Quote
Old Mar 11, 2012, 02:04 PM   #18
Schmiddie
King
 
Schmiddie's Avatar
 
Join Date: Feb 2012
Location: Germany
Posts: 612
As I said...I have already deleted the files, but I'm not able to upload the files (assets/art/teamcolor) to the server. There is a question mark on the folder and I don't know why this folder isn't uploaded...
__________________
Modder and Member of the Religion and Revolution Team
Schmiddie is offline   Reply With Quote
Old Mar 11, 2012, 02:05 PM   #19
raystuttgart
Civ4Col Modder
 
raystuttgart's Avatar
 
Join Date: Jan 2011
Location: Stuttgart, Germany
Posts: 3,169
Quote:
Originally Posted by Schmiddie View Post
As I said...I have already deleted the files, but I'm not able to upload the files (assets/art/teamcolor) to the server. There is a question mark on the folder and I don't know why this folder isn't uploaded...
Ok, I will clean up.
(Will take a few minutes.)
raystuttgart is offline   Reply With Quote
Old Mar 11, 2012, 02:11 PM   #20
raystuttgart
Civ4Col Modder
 
raystuttgart's Avatar
 
Join Date: Jan 2011
Location: Stuttgart, Germany
Posts: 3,169
@Schmiddie:

I have deleted the folder "colonization flags" from the root of our project.

Please do "SVN Update" first.
Then upload the correct files into the right folder structure.

Tell me, when you are done.
(I will do a test in game then.)
raystuttgart is offline   Reply With Quote
Reply

Bookmarks

Go Back Civilization Fanatics' Forums > CIVILIZATION IV > Civ4 - Colonization > Civ4Col - Creation & Customization > Civ4Col - Project & Mod Development > Religion and Revolution > [Religion and Revolution]: Subversion

Thread Tools

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



Advertisement

All times are GMT -6. The time now is 03:45 PM.


Powered by vBulletin®
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
This site is copyright © Civilization Fanatics' Center.
Support CFC: Amazon.com | Amazon UK | Amazon DE | Amazon CA | Amazon FR