Migration of Bazaar to Git: Difference between revisions
Jump to navigation
Jump to search
(→TODO) |
(→TODO) |
||
(14 intermediate revisions by 2 users not shown) | |||
Line 12: | Line 12: | ||
== TODO == | == TODO == | ||
* Investigate how Launchpad Git repositories work. Investigate if Github or own hosted gitlab is more suitable. | * Costs of hosting a private repository of git on Launchpad, github and on other available git hosting platforms need to be looked at. | ||
** see | ** see [[#Costs of hosting private repositories]] | ||
* Integrate git in VisualStudio and SharpDevelop | * Investigate how Launchpad Git repositories work. | ||
** see [[#Investigation of Launchpad Git Repositories]] | |||
* Investigate if Github, other git hosting platforms or own hosted gitlab is more suitable. | |||
** investigate the varying features these hosting platforms have to offer | |||
** see [[#Feature Comparison of Git Hosting]] | |||
* Clients: Integrate git in VisualStudio and SharpDevelop, [https://tortoisegit.org/ TortoiseGit] in Windows Explorer, [https://desktop.github.com/ Github Desktop] | |||
* Document conversion from bzr to git and keeping the history. see http://www.pokorra.de/2013/10/mirror-a-bazaar-repository-from-launchpad-to-github/ | * Document conversion from bzr to git and keeping the history. see http://www.pokorra.de/2013/10/mirror-a-bazaar-repository-from-launchpad-to-github/ | ||
* Jenkins: use git instead of bzr | |||
* nant: changes to import translations | |||
* nant: changes to use current bzr version number in the petra client | |||
* Time estimation for switch over | * Time estimation for switch over | ||
* document benefits of a switch over | * document benefits of a switch over | ||
Line 22: | Line 30: | ||
* [[How to work with git on the command line]] | * [[How to work with git on the command line]] | ||
* [[How to work with git through the GUI on Windows]] | * [[How to work with git through the GUI on Windows]] | ||
* Produce some screencasts for Training for the developers | |||
== Costs of hosting private repositories == | |||
* Launchpad | |||
** https://launchpad.net/+tour/join-launchpad#commercial | |||
** 250 USD per year plus 20% VAT if you are in the EU | |||
* Github | |||
** https://github.com/pricing | |||
** personal plan: Micro: 7 USD per month, 84 USD per year | |||
** organisation plan: Bronce: 25 USD per month, 300 USD per year | |||
** difference between personal and organisational: https://help.github.com/articles/what-s-the-difference-between-user-and-organization-accounts/ | |||
*** mainly: multiple admins | |||
* Gitlab.com | |||
** https://about.gitlab.com/gitlab-com/ | |||
** free without support | |||
** Unlimited private and public repositories | |||
** Unlimited private collaborators | |||
* Gitlab hosted by Timotheus | |||
** https://git.solidcharity.com | |||
** 200 Euro per year | |||
* self hosted Gitlab | |||
** Open Source: no license fee | |||
** could run inside ICT | |||
** problem: need to maintain the server. needs quite some RAM. Ubuntu packages are available. | |||
** problem: make available to people from outside, Timotheus would not have a VPN access | |||
== Feature Comparison of Git Hosting == | |||
* Launchpad | |||
** the way that the branches work with bazaar has not been fully ported to git yet. That would be an advantage, because the same words are used as with Bazaar. | |||
** see https://help.launchpad.net/Code/Git#What_will_be_supported.3F | |||
** it says: the interface for registering merge proposals is very rough | |||
** poor code browser | |||
* Github | |||
** state of the art | |||
** many people are used to it | |||
** Pull requests (similar to merge requests) work really nice, notices merge conflict before you can submit the pull request | |||
** very good code browser, revision browser | |||
* Gitlab | |||
** not as perfect as Github, but pretty well done. getting there! | |||
** web interface for browsing the code and revisions can be slow on big commits | |||
== Investigation of Launchpad Git Repositories == | |||
* see https://help.launchpad.net/Code/Git | |||
vi ~/.gitconfig | |||
[url "git+ssh://tpokorra@git.launchpad.net/"] | |||
insteadof = lp: | |||
[url "git+ssh://tpokorra@git.launchpad.net/~tpokorra/+git/"] | |||
insteadof = lpme: | |||
mkdir test | |||
cd test | |||
git init | |||
vi readme.md | |||
git add readme.md | |||
git commit -a -m "initial commit" | |||
git remote add origin lpme:test | |||
git push --set-upstream origin master | |||
see result at: | |||
* https://code.launchpad.net/~tpokorra/+git | |||
* https://code.launchpad.net/~tpokorra/+git/test | |||
* https://git.launchpad.net/~tpokorra/+git/test/ | |||
== useful git commands == | == useful git commands == | ||
# do not pull the whole history, but just the latest commit. save download bandwidth | # do not pull the whole history, but just the latest commit. save download bandwidth | ||
git clone --depth=1 https://github.com/openpetra/openpetra.git myopenpetradirectory | git clone --depth=1 https://github.com/openpetra/openpetra.git myopenpetradirectory |
Latest revision as of 12:31, 10 September 2015
Description
This is just a proposal!
The idea is that the development and improvement of bazaar is not reliable anymore. See for this:
- https://www.stationary-traveller.eu/pages/bzr-a-retrospective.html
- https://lists.ubuntu.com/archives/bazaar/2012q4/075390.html
- Even Launchpad are now offering git repositories as well: https://help.launchpad.net/Code/Git
In 2009, we actually initially used Git for hosting the source code of OpenPetra! We still have some documentation for that in the wiki:
TODO
- Costs of hosting a private repository of git on Launchpad, github and on other available git hosting platforms need to be looked at.
- Investigate how Launchpad Git repositories work.
- Investigate if Github, other git hosting platforms or own hosted gitlab is more suitable.
- investigate the varying features these hosting platforms have to offer
- see #Feature Comparison of Git Hosting
- Clients: Integrate git in VisualStudio and SharpDevelop, TortoiseGit in Windows Explorer, Github Desktop
- Document conversion from bzr to git and keeping the history. see http://www.pokorra.de/2013/10/mirror-a-bazaar-repository-from-launchpad-to-github/
- Jenkins: use git instead of bzr
- nant: changes to import translations
- nant: changes to use current bzr version number in the petra client
- Time estimation for switch over
- document benefits of a switch over
Document usage of git on these pages:
- Produce some screencasts for Training for the developers
Costs of hosting private repositories
- Launchpad
- https://launchpad.net/+tour/join-launchpad#commercial
- 250 USD per year plus 20% VAT if you are in the EU
- Github
- https://github.com/pricing
- personal plan: Micro: 7 USD per month, 84 USD per year
- organisation plan: Bronce: 25 USD per month, 300 USD per year
- difference between personal and organisational: https://help.github.com/articles/what-s-the-difference-between-user-and-organization-accounts/
- mainly: multiple admins
- Gitlab.com
- https://about.gitlab.com/gitlab-com/
- free without support
- Unlimited private and public repositories
- Unlimited private collaborators
- Gitlab hosted by Timotheus
- https://git.solidcharity.com
- 200 Euro per year
- self hosted Gitlab
- Open Source: no license fee
- could run inside ICT
- problem: need to maintain the server. needs quite some RAM. Ubuntu packages are available.
- problem: make available to people from outside, Timotheus would not have a VPN access
Feature Comparison of Git Hosting
- Launchpad
- the way that the branches work with bazaar has not been fully ported to git yet. That would be an advantage, because the same words are used as with Bazaar.
- see https://help.launchpad.net/Code/Git#What_will_be_supported.3F
- it says: the interface for registering merge proposals is very rough
- poor code browser
- Github
- state of the art
- many people are used to it
- Pull requests (similar to merge requests) work really nice, notices merge conflict before you can submit the pull request
- very good code browser, revision browser
- Gitlab
- not as perfect as Github, but pretty well done. getting there!
- web interface for browsing the code and revisions can be slow on big commits
Investigation of Launchpad Git Repositories
vi ~/.gitconfig [url "git+ssh://tpokorra@git.launchpad.net/"] insteadof = lp: [url "git+ssh://tpokorra@git.launchpad.net/~tpokorra/+git/"] insteadof = lpme: mkdir test cd test git init vi readme.md git add readme.md git commit -a -m "initial commit" git remote add origin lpme:test git push --set-upstream origin master
see result at:
- https://code.launchpad.net/~tpokorra/+git
- https://code.launchpad.net/~tpokorra/+git/test
- https://git.launchpad.net/~tpokorra/+git/test/
useful git commands
# do not pull the whole history, but just the latest commit. save download bandwidth git clone --depth=1 https://github.com/openpetra/openpetra.git myopenpetradirectory