1

I am developing the following application and I'm thinking of making it opensource (add it to Github).

http://actibities-uniongr.rhcloud.com/pages/view-demo

In my local environment I have scripts loading temporary data for development purposes. Should that be included in the code pushed to Github?

3
  • 1
    Difficult to say without more detail. Try and follow patterns you see for development files you see on other published Rails projects. If they are useful for demos or testing, then it should be fine to include them in e.g. a /dev or /fixtures directory. Possibly from your description they should be fixtures and loaded/tested in specs. Commented Oct 14, 2013 at 18:54
  • Thanx @NeilSlater They're initial dummy data for dev. I'll check out other ruby apps as you suggest. Commented Oct 14, 2013 at 19:08
  • 1
    I'd suggest including anything that isn't sensitive (like passwords, financial data). Unless it's too large, but that usually isn't a problem. Commented Oct 14, 2013 at 21:52

1 Answer 1

2

In general, you should:

Include

  • Source code (duh)
  • Scripts related to the building, packaging, and/or releasing of the software
  • Documentation, explaining how to use those scripts
  • License (important!)

Not include

  • Sensitive data, including private keys and passwords (remove these before you initially commit or they can still be accessed). To remove data from an existing repository you should try git's filter-branch command.
  • Proprietary code (duh)
  • Large binary files, including:
    • Prebuilt toolchain (this should be present in the environment)
    • Large binary data that can be recreated easily using build scripts
  • Library source trees -- make these either a requirement for building, or use a Git submodule to include them.

As for the initial commit and upload, GitHub themselves have a pretty good tutorial.

I applaud your decision to open-source the project. Good luck!

Sign up to request clarification or add additional context in comments.

3 Comments

Thank you @thirtythreeforty . You covered my concerns. I'll checkout my options about license. Any recommendations are welcomed. Thanx again for your time.
Licenses? I'm a huge fan of the GNU GPL [gnu.org/licenses/gpl.html] because it forces people who use your code to share their changes. If you like this idea, then since you're writing a webapp, you should consider the Affero GPL [gnu.org/licenses/agpl-3.0.html]. Some people think the GPL is too restrictive, so they choose the MIT, Apache, or BSD license, which basically lets others use the code for anything so long as they give credit.
Now that I think about it, choosealicense.com is a pretty good list of them. (It's run by GitHub--surprise! I'm a pretty big fan of GitHub :)

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.