Difference between revisions of "Overlay:Flora"

From Funtoo Linux
Jump to: navigation, search
m (... git-flow)
Line 163: Line 163:
  
 
To make us aware that you commited something go again to your github.com account and give us a Pull Request, so we can have a short review of your push and include it that way into the main tree. If you started working on an ebuild please let us know that you are responsible for it by adding your data to [[ebuild Maintainer list]]
 
To make us aware that you commited something go again to your github.com account and give us a Pull Request, so we can have a short review of your push and include it that way into the main tree. If you started working on an ebuild please let us know that you are responsible for it by adding your data to [[ebuild Maintainer list]]
 +
 +
== A Days work with flora ==
 +
 +
At that point you should should already have a copy of flora and you should be firm with the git-flow extension for github... :) fine so we are ready to start our dayly work flora now.
 +
 +
First we need to keep in sync with the mainstream flora repository, that could be done really easy...
 +
 +
{{shell|}}
  
 
[[Category:Projects]] [[Category:Portage]] [[Category:Featured]]
 
[[Category:Projects]] [[Category:Portage]] [[Category:Featured]]

Revision as of 10:57, 3 August 2011

Contents


What is flora

flora is the funtoo overlay for User Contribution to funtoo.

Some of you may ask "Why they call it flora?"

For that have a view at the definition for flora:

  1. Plants considered as a group, especially the plants of a particular country, region, or time.
  2. A treatise describing the plants of a region or time.
  3. The bacteria and other microorganisms that normally inhabit a bodily organ or part: intestinal flora.

We hope that for ebuilds submittet only the first 2 definitions would be suitable :)

Funtoo-overlay-structure2.png

How to work with ...

... flora

Core Team

Core Members can directly push to flora, they have the appropriate rights, just do

cd <your dir for overlays>
git clone git@github.com:funtoo/flora.git

Now you will be able to push to and pull from flora. For development in git I would all members advice to use git-flow, since we get a clean structure without any stuff of development left in the later overlay that way. ;) See for it the Git Guide and the flora#... git-flow

User Contribution

For normal users that like to contribute it is a bit more complicated but we will now walk through it with you, helping you to do so.

First you have to have a git-hub account, for that you can follow our Git Guide to get one. If you have already one keep on here, if not get one first.

Since you should have a git-hub account now, go visit https://github.com/funtoo/flora and use the fork button on the top to fork the repository to your own account so you can push to it later.

Now you should create a directory to contain the local copy of the overlay repository on your local disk. Let's say you use /root/.git for it, but you may use what ever you want to.

cd /root/.git
git clone git@github.com:<your github username>/flora.git

Now you are nearly ready to contribute. You have flora cloned to /root/.git/flora now and we will go in it and make the necessary changes so we can work with it like we would. Read on in flora#... git-flow.

... git-flow

Since this is a very helpful tool, you should just emerge it and also the git-flow-completion package, as it will support you in your work.

# emerge -avt gitflow git-flow-completion

When it is installed, move to your flora overlay and initialize the git-flow for it. In the following we suppose that you used /root/.git/flora for your overlay.

# cd /root/.git/flora
# git-flow init
No branches exist yet. Base branches must be created now.
Branch name for prodution releases: [master] <ENTER>
Branch name for "next release" development: [develop] <ENTER>

Ho to name your supporting branch prefixes?
Feature branches? [feature/] <ENTER>
Release branches? [release/] <ENTER>
Hotfix branches? [hotfix/] <ENTER>
Support branches? [support/] <ENTER>
Version tag prefix? [] <ENTER>
#

Your main work will now be done in the develop branch. When you want to add a feature or do a hotfix you just do

# git-flow feature start <name of feature>
(Edit of feature)

You can at any time switch to the development branch again with

# git checkout develop

To see which features you have open you can use

# git-flow feature [list]

If your feature is finished do

# git-flow feature finish <name>

For a hotfix to any of your ebuilds you use

# git-flow hotfix start <version>

Now you can hotfix the ebuild and do a simple

# git-flow hotfix finish <version>

Now that we now how to add features, do hotfixes and support work, we still need to know how to do a release. This is done like that:

# git add <directory or file>
# git commit
(Now your editor will appear if you followed our Git Guide)
# git-flow release start <name>
Switched to a new branch 'release/<name>'

Summary of actions
- A new branch 'release/<name>' was created, based on 'develop'
- You are now on branch 'release/<name>'

Follow-up actions:
- Bump the version number now!
- Start committing last-minute fixes in preparing your release
- When done, run:

     git-flow release finish <name>
#
(Do what is noted above if needed)
# git-flow release finish <name>
Switched to branch 'master'
Merge made by recursive
 X files changed, X insertions(+), X deletions(-)
 create mode aaaaaa README
Deleted branch release/<name> (was <githash>)

(your editor will come up so you cann give a release note, save and close your editor then.)

Summary of actions:
- Latest objects have been fetched from 'origin'
- Release branch has been merged into 'master'
- The release was tagged '<name>'
- Release branch has been back-merged into 'develop'
- Release branch 'release/<name>' has been deleted

# 
(as we are now on the master branch we can do the push and go back to development branch
# git push
# git checkout develop

Now you should have an overview of how we like to work in flora and keep a clean structure in it.

This workflow model will then look like the following graph:

Funtoo-struct-overlay-gitflow.png

Notify us about your commit

To make us aware that you commited something go again to your github.com account and give us a Pull Request, so we can have a short review of your push and include it that way into the main tree. If you started working on an ebuild please let us know that you are responsible for it by adding your data to ebuild Maintainer list

A Days work with flora

At that point you should should already have a copy of flora and you should be firm with the git-flow extension for github... :) fine so we are ready to start our dayly work flora now.

First we need to keep in sync with the mainstream flora repository, that could be done really easy...

{{{Input}}}
Personal tools
Namespaces

Variants
Actions
Categories
Toolbox
Stuff