Index by title

Developers' Corner

Welcome, Redmine Hacker!

Working with Redmine Hacks

Git information


Frequently Asked Questions

Frequently Asked QuestionsBasic Site QuestionsWhat do I have control over as a project manager?Do I have to use all the features?How can I let someone edit the project wiki?How can I change the project description?How can I give someone else commit privileges to my project?I'd like Redmine modules enabled or disabled for my project.

Basic Site Questions

What do I have control over as a project manager?

You have control over almost all aspects of the project: what modules it uses, the wiki, the forums, members, the issue system, etc. That is, you have these tabs available under Settings, and you have manager-level permissions in those areas.

The two exceptions are the Repositories tab and the Information tab, both under settings. These are restricted because Repositories must be configured outside Redmine on the server, and because if some of the information in the Information tab changes, it needs to be updated outside Redmine as well.

Do I have to use all the features?

No! It may be quite natural for you to use, say, only the Wiki for a project that involves documentation. Or perhaps your repository is already hosted elsewhere, or doesn't use Git, so you may use the download area and wiki but not Repository. It's up to you.

How can I let someone edit the project wiki?

The project manager must login, go to Settings, select the Members tab, and add the desired user with at least Reporter permission.

How can I change the project description?

Submit a new issue on the Redmine Hacks project requesting the change.

How can I give someone else commit privileges to my project?

Normally, with a distributed version-control system (DVCS) such as Git, each repository has only one committer. Other people use git pull, git push, git format-patch, etc. to exchange commits with the maintainer of the primary Git repository.

However, if you really do want someone else to have commit access, then they must first create and activate an account here on redminehacks.org. Then you (the manager of the project) must create a new issue on the Redmine Hacks project requesting commit access for the new person, and include the redminehacks.org username of that person, and that person's SSH public key.

I'd like Redmine modules enabled or disabled for my project.

Submit a new issue on the Redmine Hacks project requesting the change.


Guide to using Git with Redmine Hack

This page is both for project managers and others that work with Redmine Hacks.

Git Background

If you're new to Git, check out my 5-Minute Git Guide. It was written for a different site, but almost all of the information is relevant.

Checking Out The Source

(This is for members of the public, not Project Managers; they should be following the instructions in GitSetup)

Just:

git clone git://git.redminehacks.org/projectname.git

Where projectname is the name of the project. You can find that on the Redmine Hacks Gitweb

If you get an error, you can substitute "http://" for "git://" in the above command. It'll be slower, but works with more firewalls.

Onward from here

The 5-minute git guide should help explain the remaining basic operation. The only difference will be submitting patches: generally you'll want to attach the result of git format-patch to an issue rather than emailing it anywhere.


Guide Setup for use as a Redmine Hacks Developer

Guide Setup for use as a Redmine Hacks DeveloperBasic Git Installation and ConfigurationCreate your SSH public keyFirst Upload of Your ProjectImporting your project into Git.Initial pushPrepare to cloneCloning your Git RepositoryRoutine Use

Basic Git Installation and Configuration

Before starting here, visit my 5-Minute Git Guide for information on installing Git and basic configuration.

Create your SSH public key

There are many guides out there, but Github has a very simple one. It covers Linux, Mac, and Windows. Get it here: http://github.com/guides/providing-your-ssh-key

Once you have your SSH public key, you will need to attach it to your NewHack request, or to your request to be added as a Git contributor.

Once you've been added, then you can move on to...

First Upload of Your Project

Importing your project into Git.

If you haven't yet stored you project in Git at all, follow this section. If you are already using Git locally, skip to the next section.

cd into your project's code directory. Clean it up so there are no backup files, temporary files, etc. lying around. Then:

git init
git add .
git commit

Give an initial commit comment.

Initial push

Now, tell Git how to talk to the server:

git remote add origin ssh://git@git.redminehacks.org:7722/projectname.git
git push --all

Replace projectname with the project identifier (URL component) of your project.

If you want to copy your tags to the remote as well, also run:

git push --tags

Your tree will appear in the Repository tab and in Gitweb in less than 30 minutes. (After the initial delay, all updates should be immediate)

Prepare to clone

Next, cd .. from your project and rename it to a temporary directory. You will now re-clone the project from the server. Strictly speaking, this isn't necessary, but it's handy for two reasons:

  1. It automatically marks all your local branches to track remote ones
  2. It gives you an opportunity to test and make sure everything looks right

Cloning your Git Repository

For project managers only, you clone your git repository like this:

git clone ssh://git@git.redminehacks.org:7722/projectname.git

Of course, replacing projectname with the URL component (project ID) you are using.

Routine Use

Work on your local repository. git commit -a changes, etc. (See the 5-minute Git Guide).

When you're ready to push your branch, just say:

git push

That will push it up to the server.

Other useful commands:

If you have more than one committer, or use more than one PC, git pull will pull down changes from other committers/machines from the Redmine Hacks server to your PC.


Hosting Your Hack at Redmine Hacks

So you'd like to host your hack here? Great! Here's what you do:

  1. Create an account on the site, if you don't already have one. Activate as instructed.
  2. Log in to your account.
  3. Download the New Project Request Form ( attachment:NewProject.txt ). Edit it in your favorite text editor.
  4. Create a new support issue under the Redmine Hacks project
  5. Attach your completed New Project Request Form.
  6. If you're requesting a Git repository, you'll also need to attach your SSH public key. See GitSetup for more.
  7. Submit your ticket.

You'll get an email response back when your project is set up.

Now, head on over to the DevelopersCorner to read up on being a developer.


Site Policies

This is a site for the community, so there isn't a lot of formal policy. Just common sense. Here are a few thoughts.

Software Licensing

By submitting software for inclusion here, you authorize that you are either the copyright holder, or have the legal right to post it.

This site only hosts software licensed under an Open Source license. If you're trying to keep your software proprietary, I'm not going to spend my money to help you make money. Redmine itself is GPL'd, and it's hard to hide Ruby source code anyhow, so I don't think anybody will mind. I won't dictate what OSS license you use. Just pick a common one.

You retain copyright, of course.

Real Projects

Some sites like SourceForge have a common problem: somebody will sign up for a project in 2002, and 5 years later it's still in "planning" phase with no results.

This site is for real projects with real results. If a project looks dead, efforts will be made to contact its maintainers. If maintainers don't show up, and neither does code, dead projects may be removed.

Your Freedoms

You have the ability to control a large number of things about your projects, and mostly can enable or disable features as you wish. See the FAQ for more details.

Expectations of Project Managers

Project managers should:

No guarantee

This site is run on a volunteer basis. There's no guarantee that it will be available for a certain amount of time, or won't ever shut down.


Why are there ads on redminehacks.org?

The ads are here because it costs me money to host this site. My server and hosting costs about $600 each year, plus costs of domain names.

The ads don't manage pay for that; in fact, they don't even come close. But they do help, and that's important to help me save money.

I know ads can be annoying, but these are Google ads, so hopefully they shouldn't be too bad.

I finance this site out of my own pocket, and I spend my own time on it to keep it running. This helps make that sting a little smaller. I'm not turning a profit on it, for sure.

-- John


Welcome to Redmine Hacks

Redmine Hacks exists to provide free hosting for Redmine enhancement projects (hacks).

Redmine Users

If you are a Redmine user looking for plugins, patches, themes, scripts, or other enhancements for Redmine, this is the right place! Get started right away by viewing the project list.

Hack Developers

Take a look at our Developers' Corner. You may be particularly interested in how to request a new HACK (project)

About this site

This site is maintained by John Goerzen

Inspiration

Thanks for the inspiration for this site goes to http://www.trac-hacks.org/