require_once("../../liberislabs.php"); $pagedata=array( 'name' => 'index', 'title' => 'GNULib Stable HOWTO', 'jumbotron_title' => 'GNULib Stable HOWTO', ); show_page_top($pagedata); show_jumbotron($pagedata); ?>
| upstream | tracks git://git.savannah.gnu.org/gnulib.git | 
| stable | the stable snapshot we produce, based on upstream | 
| master | the debian branch, based on stable (optional) | 
         $ git clone git://git.savannah.gnu.org/gnulib.git
	 $ git branch -m master upstream
       
     
         $ git remote add erislabs git://erislabs.net/gnulib.git
	 $ git fetch erislabs
	 $ git branch stable erislabs/stable
       
     
         $ git branch stable upstream
       
     
         $ git checkout upstream
         $ git pull
     
   
         $ git tag snapshot-start upstream
     
   
         $ git checkout upstream
         $ ./gnulib-tool --create-megatestdir --with-tests  --dir=t 2>&1 | tee create.out
         $ cd t
         $ ./do-autobuild 2>&1 | tee ../build.out
         $ cd ..
     
   
         $ grep -L rc=0 t/logs/*
     
   
         $ git checkout stable
         $ git merge upstream
     
   
         $ git checkout upstream <all conflicting paths except NEWS.stable>
         $ git commit -a
     
   
         $ git checkout upstream
         $ git pull
     
   
         $ git log --oneline --reverse --topo-order snapshot-start..upstream > ../stable.log
     
   
         $ git checkout stable
     
   
         $ git show commitid
	 
       
         $ stable-cherry-pick commitid
	 
	 (stable-cherry-pick source)
       
          $ git tag -d snapshot-start
     
   
          $ git tag stable/yymmdd
     
   
          $ git archive --format=tar --prefix=gnulib-yymmdd-stable/ stable/yymmdd | gzip -9 > ../gnulib-yymmdd-stable.tar.gz