Difference between revisions of "git migration"
From Free Pascal wiki
Jump to navigationJump to searchLine 5: | Line 5: | ||
* More is better. <br/> Jonas has a very complete git mirror of the SVN+CVS part.<br/> (care needs to be taken: there used to be a time when copyrighted code was checked in) | * More is better. <br/> Jonas has a very complete git mirror of the SVN+CVS part.<br/> (care needs to be taken: there used to be a time when copyrighted code was checked in) | ||
* In order to save on diskspace, find ways to tell user how to clone only a part. | * In order to save on diskspace, find ways to tell user how to clone only a part. | ||
− | + | Use <code>git clone --depth 1</code> to get only the latest revision (with fetch, later on more revisions can be fetched if needed) | |
== Branching model ? == | == Branching model ? == | ||
Various models exist: | Various models exist: | ||
Line 28: | Line 28: | ||
** Requires running binary all the time, on a separate port. | ** Requires running binary all the time, on a separate port. | ||
== What about Lazarus ? == | == What about Lazarus ? == | ||
+ | = Tool for migration = | ||
+ | == subgit == | ||
+ | Advantages | ||
+ | * very flexible | ||
+ | * very fast (remote cloning of the whole FPC repository takes ?) | ||
+ | Disadvantages | ||
+ | * external java-based tool, so some dependencies | ||
+ | == git-svn == | ||
+ | Advantages | ||
+ | * included in git it self | ||
+ | Disadvantages | ||
+ | * less flexible | ||
= Work to do = | = Work to do = | ||
== Migrate SVN repo. == | == Migrate SVN repo. == | ||
== Set up user management and permissions. == | == Set up user management and permissions. == | ||
== Set up and automate github mirror == | == Set up and automate github mirror == |
Revision as of 18:12, 16 December 2017
This page is about migrating FPC from SVN to git
Concerns/Questions
What part of SVN to migrate ?
- More is better.
Jonas has a very complete git mirror of the SVN+CVS part.
(care needs to be taken: there used to be a time when copyrighted code was checked in) - In order to save on diskspace, find ways to tell user how to clone only a part.
Use git clone --depth 1
to get only the latest revision (with fetch, later on more revisions can be fetched if needed)
Branching model ?
Various models exist:
Something like the current one or a different one?
User management ?
Git has no concept of users. To manage permissions on a server, a separate program is needed.
gitorious
- Advantages
- uses git repo for administration
- No server binary
- Disadvantages
- No web interface
- administration needs ssh key, only ssh possible.
- Web integration ?
gitea
- Advantages
- Web based
- Fine tuning possible
- Disadvantages
- Separate config
- Requires running binary all the time, on a separate port.
What about Lazarus ?
Tool for migration
subgit
Advantages
- very flexible
- very fast (remote cloning of the whole FPC repository takes ?)
Disadvantages
- external java-based tool, so some dependencies
git-svn
Advantages
- included in git it self
Disadvantages
- less flexible