kripken / intensityengine

[Not active!] An open source platform for 3D games and virtual worlds
https://web.archive.org/web/20100222011320/http://www.syntensity.com/
Other
58 stars 15 forks source link

Add git ignore entries #26

Closed ghost closed 14 years ago

ghost commented 14 years ago

Sorry, I don't have my workflow setup with git yet, I know this would be easier as a patch. However, I figured I would put it here so I don't forget:

cbuild/CMakeCache.txt
cbuild/CMakeFiles/
cbuild/Makefile
cbuild/cmake_install.cmake
cbuild/src/
local/master_server/local_asset_storage/
local/master_server/log.*
local/master_server/sessions/
local/master_server/sqlite.db
local/server/metadata/
local/server/packages/
local/server2/
master_django/intensity/components/instance_validator__models.py
src/thirdparty/v8/.sconsign.dblite
src/thirdparty/v8/libv8.a
src/thirdparty/v8/obj/

Actually, instead of setting up all of these git ignore directories for "local", I don't think it should be a part of syntensity source. Instead, the settings files should be held in some mutual location, with names like:

The instructions would then tell you to put copy the templates and put them in some sensible location on your filesystem, then modify the startup script to point to the configs.

Files like this shouldn't be edited directly, nor should their additional files be added under the root source directory. This prevents any accidental commits, keeping the local repos clean, and preventing anyone trying to (inadvertently) push config changes upstream.

ryanswrt commented 14 years ago

While I do understand your point with the settings.cfg, adding another install step would complicate things a bit. Couldn't we rather just auto-gen the settings and then ignore the cfg files?

ghost commented 14 years ago

I'm not sure I quite follow "auto-gen the settings", but I think it's reasonable if the initial launch of a server copies the template to local storage automatically (if a config doesn't already exists).

This should allow someone to run the server with no setup. However, if someone is going to be running a master server, there's already going to be some "setup" anyway.

ryanswrt commented 14 years ago

Automatic setup would be equivalent to what I was thinking..

kripken commented 14 years ago

Added stuff to gitignore in 28b482ea2c068225894ffc3e83e1970465c22bc4

I don't quite follow the other issue you guys are discussing.

ryanswrt commented 14 years ago

rapiscan doesn't want the server to use the serversettings files located in git, because if they are modified, committing them would cause non-default settings to be passed on to others

ghost commented 14 years ago

This isn't terribly important, but just to elaborate:

It's common practice to never put configuration files under version control. Instead, a template file is committed and the developer can make a copy of the template file for their own configuration settings. This, of course, applies to any file that each developer needs to change.

I probably shouldn't have put this in the same issue as the ignore entries, sorry about that.

kripken commented 14 years ago

Not sure which config files you are talking about.

local/*/settings.cfg are there on purpose, as that is an example directory setup for testing. For actual use, you would use a different home dir, and the template config file would be created for you there.

ghost commented 14 years ago

Ah ok. I followed the README-standalone.txt instructions, which say to use the local/*/ directories. Unless I'm missing it, there's currently no mention of local as being for test purposes (or copying over the config). Although I see that you mention HOME_DIR in README-server.txt.

So I guess this boils down to making it clear in the instructions. I think it would be helpful for config templates to have a .cfg.tmpl extension to make it extra clear that they are templates and should never be committed, but it's only my opinion.