Differences

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

Link to this comparison view

dev:extensions:svn_to_github [2014/11/07 08:48]
mistic100 created
dev:extensions:svn_to_github [2015/08/22 20:03] (current)
flop25
Line 1: Line 1:
 +<WRAP round tip>
 +This tutorial describes how to move from SVN to Github, and does not force you to do so. Piwigo.org SVN repository is still alive and there is no plan to shut it down.
 +</WRAP>
 +
 ====== Migrate a plugin from Piwigo.org SVN to Github ====== ====== Migrate a plugin from Piwigo.org SVN to Github ======
  
Line 31: Line 35:
 === Everyone === === Everyone ===
 You will also need a little tool created by Atlassian: [[https://bitbucket.org/atlassian/svn-migration-scripts/downloads/svn-migration-scripts.jar|svn-migration-scripts.jar]]. You will also need a little tool created by Atlassian: [[https://bitbucket.org/atlassian/svn-migration-scripts/downloads/svn-migration-scripts.jar|svn-migration-scripts.jar]].
 +
 +<wrap round tip>
 +If you have several repositories to migrate you can also use this NodeJS script I (Mistic) created to migrate my 25 plugins: [[https://gist.github.com/mistic100/017a848ff619f0624dde|piwigo-svn2github.js]].
 +</wrap>
  
 ===== Prepare ===== ===== Prepare =====
-In order to get a consistent commit history on Github you will have to tell Git SVN who is who. Open a terminal where ''svn-migration-scripts.jar'' is located (Shift+Click on Windows) and enter the following command:+In order to get a consistent commit history on Github you will have to tell Git SVN who is who. Open a terminal where ''svn-migration-scripts.jar'' is located (Shift+Click on Windows or right-click->Git Bash Here) and enter the following command:
  
 <code> <code>
Line 49: Line 57:
  
 === Adapt authors' file === === Adapt authors' file ===
-Now modify the left part of each line to match an actual Github accounts. The email must be one of the emails associated to the Github account.+Now modify the right part of each line to match an actual Github accounts. The email must be one of the emails associated to the Github account.
  
 You will certainly get ''TranslationTeam'' in this file, the SVN user used to commit language files. Complete the line as following: You will certainly get ''TranslationTeam'' in this file, the SVN user used to commit language files. Complete the line as following:
Line 82: Line 90:
 [[https://github.com/new|Create a new repository]]. You must leave it empty (no README.md, no LICENSE, no .gitignore). [[https://github.com/new|Create a new repository]]. You must leave it empty (no README.md, no LICENSE, no .gitignore).
  
-Still in your terminal type:+Still in your terminal (on windows the previous command should have created a new folder /YOURPLUGIN, so redo right-click->Git Bash Here) type:
  
 <code> <code>
Line 93: Line 101:
 ===== Update tools ===== ===== Update tools =====
  
-=== PEM (plugins repository) === +See [[dev:extensions:use_scm]]
-Your plugin is already available in [[http://piwigo.org/ext|Extensions]], time to update the plugin data to use your new Github repo instead of the SVN one. +
- +
-Go to [[http://piwigo.org/ext/my.php|your page]] and select the migrated plugin, then click on the SCM icon {{http://piwigo.org/ext/template/images/scm.png}}. +
- +
-Select Git and change the URL, don't change the other fields. You must give the root URL of your repo, for example ''%%https://github.com/Piwigo/ContactForm%%'', you will be able to choose a specific branch when publishing a new revision. +
- +
-Validate. You should see the correct Git information in the bottom block, if not, double check the form. +
- +
-=== Lexiglot (translation platform) === +
-If your plugin is available in [[http://piwigo.org/translate|Piwigo Translate]] some stuff has to be done to continue the translation on Github. +
- +
-== Authorize user == +
- +
-As on SVN we use a single user to push translations to all plugins, this user is [[https://github.com/Piwigo-TranslationTeam|Piwigo-TranslationTeam]]. You must give push access to the user on your repo. +
- +
-To do so, on your repository page, go to **Settings / Collaborators** and add **Piwigo-TranslationTeam**. +
- +
-== Notify us == +
- +
-We need to reconfigure Lexiglot to use your new repository. Contact one of the team members on the forum or send an email to **translate-github [at] piwigo [dot] org** to tell us what is the new location of your plugin. +
- +
-By default all commits are pushed to the master branch, you can tell us if you want translations to be pushed to any other branch (the branch must already exists). +
- +
-We decided to not use pull-requests because it's a bit more complicated to implement and we don't want to spam you with a bunch of PR every week (the translation team is very active !).+
 
Back to top
dev/extensions/svn_to_github.txt · Last modified: 2015/08/22 20:03 by flop25
 
 
github twitter newsletter Donate Piwigo.org © 2002-2022 · Contact