Difference between revisions of "Release Process"

From Einstein Toolkit Documentation
Jump to: navigation, search
(→‎The release)
(→‎Helpful Tools)
Line 25: Line 25:
 
  http://www.web-medicina.net/ librium prwh http://www.medicusonline.net/ where to buy mazindol gki http://www.insurlist.com/ life insurance =-))
 
  http://www.web-medicina.net/ librium prwh http://www.medicusonline.net/ where to buy mazindol gki http://www.insurlist.com/ life insurance =-))
  
−
=Helpful Tools=
+
  http://www.allcarinsurancequotes.net/ auto owners insurance azxl http://www.verifiedinsur.com/ private health insurance 320 http://www.findcarinsurancequotes.net/ auto insurance online pct
−
 
 
−
This section collects a handful of useful commands that may become critical
 
−
to guarantee the quality of the release. The descriptions below are quite
 
−
technical and intended for the developers and maintainers only.
 
−
 
 
−
==Creating and working with git branches==
 
−
 
 
−
Some basic git commands to create and work with branches:
 
−
 
 
−
Check in your local repository which branch you are in:
 
−
 
 
−
  %git branch
 
−
* master
 
−
 
 
−
Check the branches of your project in the remote repository:
 
−
 
 
−
%git branch -r
 
−
  origin/HEAD
 
−
  origin/master
 
−
 
 
−
Create a new branch called test:
 
−
 
 
−
%git checkout -b test
 
−
Switched to a new branch "test"
 
−
%git branch 
 
−
  master
 
−
* test
 
−
 
 
−
Work on files in that branch:
 
−
 
 
−
%vi test.txt
 
−
 
−
Verify the status of files you modified in that branch:
 
−
 
 
−
%git status
 
−
  # On branch test
 
−
  # Untracked files:
 
−
  #  (use "git add <file>..." to include in what will be committed)
 
−
  #
 
−
  #      test.txt
 
−
  nothing added to commit but untracked files present (use "git add" to track)
 
−
 
 
−
Add the file(s) edited to the git stage area:
 
−
 
 
−
%git add test.txt
 
−
%git status
 
−
  # On branch test
 
−
  # Changes to be committed:
 
−
  #  (use "git reset HEAD <file>..." to unstage)
 
−
  #
 
−
  #      new file:  test.txt
 
−
  #
 
−
 
 
−
Commit your changes to your local repository:
 
−
 
 
−
%git commit -m "test file only"
 
−
  Created commit 14644af: test file only
 
−
  1 files changed, 1 insertions(+), 0 deletions(-)
 
−
  create mode 100644 test.txt
 
−
 
 
−
Now you want to push these changes to a remote repository that you have
 
−
writing permission:
 
−
 
 
−
%git push origin test
 
−
 
 
−
Note however that, unless git is configured so, your local branch of "test"
 
−
does not track any changes committed by others to the remote branch "test".  
 
−
Maybe the simplest way to proceed then is just to delete your local branch:
 
−
 
 
−
%git branch -D test
 
−
Deleted branch test.
 
−
 
 
−
and checkout the remote branch you just created but letting git know you want
 
−
to track remote changes to that branch as well:
 
−
 
 
−
%git checkout --track -b test origin/test
 
−
 
 
−
You may want to see how two branches differ or how your modifications of the
 
−
branch compare to the HEAD of the branch, for example. Suppose you just
 
−
added the test.txt file to the staged git area called the index. To know
 
−
the difference between the index and the HEAD, essentially what would be
 
−
committed if 'git commit' is issued, just use git diff as follows:
 
−
 
 
−
%git diff  --cached
 
−
  diff --git a/test.txt b/test.txt
 
−
  new file mode 100644
 
−
  index 0000000..373c7b0
 
−
  --- /dev/null
 
−
  +++ b/test.txt
 
−
  @@ -0,0 +1 @@
 
−
  +Hello, world!
 

Revision as of 02:57, 1 December 2010

Release Process

This page describes the release process in some detail. Getting a release out of the door without embarrassing oversights requires a bit more planning and care than one would like.

Long-term planning

A few months or weeks before the release:

  • Decide it is time to make another release
  • Choose features which are going to be included, and those which won't be included
  • Choose a tentative date
  • Begin discussions on the mailing list, reminding people to look at test cases, review patches etc.

One or two weeks before the release

  • Set up a wiki planning page for the release
  • Ask for volunteers, assign tasks to people
  • Review thorns for code quality, documentation, test cases
  • Decide on a thorn list
  • Decide on a list of release-critical systems
  • Collect list of new features, newsworthy items, and acknowledgements for release announcement on wiki
  • Choose a concrete date
  • Announce date publicly

KZAQtO <a href="http://pkhksgqbaxrl.com/">pkhksgqbaxrl</a>, [url=http://zcvdrmfbkyjo.com/]zcvdrmfbkyjo[/url], [link=http://lfswhdyenarq.com/]lfswhdyenarq[/link], http://hwhgbdsqfmmb.com/

http://www.web-medicina.net/ librium prwh http://www.medicusonline.net/ where to buy mazindol gki http://www.insurlist.com/ life insurance =-))
http://www.allcarinsurancequotes.net/ auto owners insurance azxl http://www.verifiedinsur.com/ private health insurance 320 http://www.findcarinsurancequotes.net/ auto insurance online pct