This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
en:devel:svn2git [2015/02/26 12:59] joebordes [Commit Guidelines] |
en:devel:svn2git [2015/10/24 18:49] (current) |
||
---|---|---|---|
Line 7: | Line 7: | ||
* [[https://www.atlassian.com/en/git/migration|Migrate to Git]] | * [[https://www.atlassian.com/en/git/migration|Migrate to Git]] | ||
+ | ===== Procedure ===== | ||
+ | <code> | ||
+ | mkdir svn | ||
+ | cd svn | ||
+ | svn2git https://url_to_svn_project/trunk --rootistrunk | ||
+ | |||
+ | #if that one doesn't work you can try this one: | ||
+ | #svn2git https://url_to_svn_project/trunk --trunk / --nobranches --notags | ||
+ | |||
+ | cd .. | ||
+ | git clone <git-project> import | ||
+ | cd import | ||
+ | git remote add svn ../svn | ||
+ | git fetch svn | ||
+ | git checkout -b svn svn/master | ||
+ | git checkout -b wip | ||
+ | git reset --hard $(git rev-list --max-parents=0 HEAD) | ||
+ | git reset $(git rev-list --max-parents=0 master) | ||
+ | git add -A | ||
+ | git commit -m <message in first commit of svn branch> | ||
+ | git rebase --onto wip --root svn | ||
+ | git tag tagname wip o idcommit | ||
+ | git checkout master | ||
+ | git merge svn | ||
+ | </code> | ||
=====Pull Request===== | =====Pull Request===== | ||
Line 18: | Line 43: | ||
[[http://stackoverflow.com/questions/5340790/easiest-way-to-replay-commits-on-new-git-repository|Easiest way to replay commits on new git repository]] | [[http://stackoverflow.com/questions/5340790/easiest-way-to-replay-commits-on-new-git-repository|Easiest way to replay commits on new git repository]] | ||
- | |||
- | =====Commit Guidelines===== | ||
- | |||
- | [[https://docs.google.com/document/d/1QrDFcIiPjSLDn3EL15IJygNPiHORgU1_OOAqWjiDU5Y/mobilebasic?pli=1|AngularJS Git Commit Message Conventions]] | ||
- | |||
- | ====Format of the commit message==== | ||
- | <code><type>(<scope>): <subject></code> | ||
- | * Any line of the commit message cannot be longer 100 characters! This allows the message to be easier to read on github as well as in various git tools. | ||
- | * Allowed <type> | ||
- | * **feat** (feature) | ||
- | * **fix** (bug fix) | ||
- | * **docs** (documentation) | ||
- | * **style** (formatting, missing semi colons, …) | ||
- | * **refactor** | ||
- | * **test** (when adding missing tests) | ||
- | * **chore** (maintain) | ||
- | * Allowed <scope> could be anything specifying place of the commit change. For example a module name, webservice or funtional feature | ||
- | * Subject line contains succinct description of the change. Use imperative, present tense: “change” not “changed” nor “changes” | ||