User Tools

Site Tools


pld-github

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
pld-github [2011-02-13 17:35]
glen [fedpkg]
pld-github [2014-03-29 18:49] (current)
glen add banner saying that this page is not actual state
Line 1: Line 1:
-====== CVS to Git Migration for PLD Linux ======+====== CVS to Git Migration for PLD Linux using GitHub ​======
  
-We have decided ​to try migrationg ​PLD Linux [[http://​cvs.pld-linux.org/​cgi-bin/​cvsweb.cgi/​packages/​|CVS Packages]] repository to [[https://​github.com/​|github]].+<note warning>​ 
 +This page describes initial plan using GitHub as PLD Linux packages primary repository, things described here are just historical view of the plan, not current state. 
 + 
 +[[https://​github.com/​pld-linux/​|PLD Linux Github Organization]] is currently used to mirror git.pld-linux.org  
 +</​note>​ 
 + 
 + 
 +This page describes migration of PLD Linux [[http://​cvs.pld-linux.org/​cgi-bin/​cvsweb.cgi/​packages/​|CVS Packages]] repository to [[https://​github.com/​|github]].
  
 Organization in github as been done: [[https://​github.com/​pld-linux]],​ later referred as Organization. Organization in github as been done: [[https://​github.com/​pld-linux]],​ later referred as Organization.
Line 10: Line 17:
 ===== Migration Tasks ===== ===== Migration Tasks =====
  
-Migration test was done using ''​git cvsimport'', ​so until cvs is not closed, we can continue updating git repository.+Migration test was done using ''​cvs2git'', ​that is not incremental (but semi-incremental achieved with rsync.log).
  
   * full git cvsimport (using local cvs files copy): ~470 minutes   * full git cvsimport (using local cvs files copy): ~470 minutes
Line 18: Line 25:
   * imported users will be login@pld-linux.org in authors file, people can claim their identities by adding their @pld emails to their accounts in github   * imported users will be login@pld-linux.org in authors file, people can claim their identities by adding their @pld emails to their accounts in github
  
-You can clone from test import at carme:​~glen/​git/​pld-git/​gitroot ​(via ssh)+You can clone from test import at carme:​~glen/​git/​pld-git/​git-import ​(via ssh)
  
 Scripts used to do the import: http://​cvs.pld-linux.org/​cgi-bin/​cvsweb.cgi/​git-migration/​ Scripts used to do the import: http://​cvs.pld-linux.org/​cgi-bin/​cvsweb.cgi/​git-migration/​
Line 24: Line 31:
 ==== git cvs convert todo ==== ==== git cvs convert todo ====
  
-    * <​del>​cvsps to understand cvsnt "​Commit Identifier"</​del>​. cvsps patched+    * <​del>​cvsps to understand cvsnt "​Commit Identifier"</​del>​. ​FIXED: ​cvsps patched
     * fix problematic packages:     * fix problematic packages:
       - <​del>​libghttp</​del>,​ cvsps loops on libghttp-fixlocale.patch (two revisions 1.1)       - <​del>​libghttp</​del>,​ cvsps loops on libghttp-fixlocale.patch (two revisions 1.1)
       - <​del>​kernel</​del>​ - cvsps loops on kernel-ppc.config       - <​del>​kernel</​del>​ - cvsps loops on kernel-ppc.config
       - <​del>​fltk2</​del>,​ <​del>​classpath</​del>,​ <​del>​joomla</​del>​       - <​del>​fltk2</​del>,​ <​del>​classpath</​del>,​ <​del>​joomla</​del>​
-    ​* <​del>​latin2 commit messages</​del>​. ​ Test packages: mutt, audiocut +      - vim : spec.vim: ''​cvs checkout: Skipping `$Log$'​ keyword due to excessive comment leader.''​ 
-      * rewriten with "​git-filter-branch --msg-filter '​FILTER'​ --tag-name-filter '​cat'"​ +    ​* <​del>​latin2 commit messages</​del>​. Test packages: mutt, audiocut. RESOLVED: see cvs2git.options 
-    * <​del>​cvs branches not imported</​del>​ Test package: audiocut +    * <​del>​cvs branches not imported</​del>​ Test package: audiocut. FIXED 
-    * what to do with unnamed branchesnagios-alert-jabber,​ nagios-plugins +    * <del>unnamed branches ​will be converted to tags: ''​cvs-<​BRANCHPOINT>''​. test packages: ​nagios-alert-jabber,​ nagios-plugins 
-    * trim $Log:$ on importing?+    * <del>trim $Log:$ on importing?</​del>​. DONE
     * filter out imported archives: .tar, .gz, etc?     * filter out imported archives: .tar, .gz, etc?
       * http://​pld.pastebin.com/​xF5yzZAv - .tar, .gz files       * http://​pld.pastebin.com/​xF5yzZAv - .tar, .gz files
Line 39: Line 46:
       * maybe these files should be removed in cvs server? they are still present in "​old"​ SOURCES.old if you really want some       * maybe these files should be removed in cvs server? they are still present in "​old"​ SOURCES.old if you really want some
     * maybe we should set Comitter to value other then Author during conversion, so could later identify cvs and git commits.     * maybe we should set Comitter to value other then Author during conversion, so could later identify cvs and git commits.
-    * ideas: ​remove %changelog from old commits ​(cvsps -> edit -git cvsimport -P)+    * <del>remove %changelog from old commits</del>. DONE
     * what to fill to .git/​description?​ just package name?     * what to fill to .git/​description?​ just package name?
     * what to do with removed packages. suggestion: clone them to ''​pld-linux-obsolete''​ organization in github and drop in ''​pld-linux''​     * what to do with removed packages. suggestion: clone them to ''​pld-linux-obsolete''​ organization in github and drop in ''​pld-linux''​
Line 54: Line 61:
       * github has polish interface translations,​ most devs should be happy? :D       * github has polish interface translations,​ most devs should be happy? :D
       * what to fill to Summary and URL fields (parse from .spec?)       * what to fill to Summary and URL fields (parse from .spec?)
-      * automate creation of new packages via [[http://​develop.github.com/​|GitHub API]] probablyCurrently done manually as: +      * <del>automate creation of new packages via [[http://​develop.github.com/​|GitHub API]]</​del>​DONE''​pldpkg.py''​ currently can add and create repos.
-  - [[https://​github.com/​organizations/​pld-linux/​repositories/​new|Create new repo]] +
-  - push changes: <​code>​ +
-git remote ​add github git@github.com:​pld-linux/​alien.git +
-git push github --mirror +
-git push github :origin +
-</​code>​+
 ===== Unsorted ===== ===== Unsorted =====
   * builder script   * builder script
-    * rewrite from scratch or patch current?+    * rewrite from scratch or patch current?\\ the patched version: https://​github.com/​draenog/​PLDbuilder
     * look into [[https://​fedoraproject.org/​wiki/​Using_Fedora_GIT|fedpkg]]?​     * look into [[https://​fedoraproject.org/​wiki/​Using_Fedora_GIT|fedpkg]]?​
     * git clone on carme should ​ use --reference to local git copy to save diskspace     * git clone on carme should ​ use --reference to local git copy to save diskspace
-  * pld builder automation (building, auto tagging)+  * pld builder automation (building, auto tagging)\\ minimal changes required; see: https://​github.com/​draenog/​pld-builder.new
   * restricting who can delete tags (auto-xxx tags should not be altered by humans)   * restricting who can delete tags (auto-xxx tags should not be altered by humans)
   * $log: keyword support for .spec, also $Revision: and $Date:   * $log: keyword support for .spec, also $Revision: and $Date:
Line 98: Line 99:
 commands that work and have alternatives commands that work and have alternatives
  
-| <​code>​./​builder -g PACKAGE</​code>​ | <​code>​fedpkg sources</​code>​ |+| <​code>​./​builder -g PACKAGE</​code>​ | <​code>​fedpkg co PACKAGE; cd PACKAGE; ​fedpkg sources</​code>​ | 
 +| <​code>​./​builder -ba PACKAGE</​code>​ | <​code>​fedpkg local</​code>​ |
 | <​code>​./​compile.sh PACKAGE</​code>​ | <​code>​fedpkg compile --short-circuit</​code>​ | | <​code>​./​compile.sh PACKAGE</​code>​ | <​code>​fedpkg compile --short-circuit</​code>​ |
 | <​code>​./​repackage.sh PACKAGE</​code>​ | <​code>​fedpkg install --short-circuit</​code>​ | | <​code>​./​repackage.sh PACKAGE</​code>​ | <​code>​fedpkg install --short-circuit</​code>​ |
Line 106: Line 108:
 | <​code>​rm -f *; cvs up</​code>​ | <​code>​fedpkg clean</​code>​ | | <​code>​rm -f *; cvs up</​code>​ | <​code>​fedpkg clean</​code>​ |
  
 +==== todo ====
 +  * switch _builddir, _srpmdir and _rpmdir to packages/​NAME when invoked from fedpkg?
pld-github.1297614950.txt.gz · Last modified: 2011-02-13 17:35 by glen