On the last day of the hackfest, we discussed git over lunch. A few folks on IRC had questions about what we talked about, and I figured there'd be wider interest so am writing this up.
What is motivating us to switch? Is bzr going away?
Development of bzr has stopped. A couple years ago Canonical reassigned all the bzr devs to other projects, leaving just a skeleton staff to do bug maintenance (same was done with Launchpad). There had been a time when Canonical pushed bzr as the Cat's Meow, but I think the realization has sunk in that git has won the larger hearts and minds war.
bzr is not going away though, near as I can tell. There's no urgency to move to something else; we can stay with it indefinitely if we want. But it's a dead end tool. As we recruit new developers we will find more often they have git experience but not bzr; eventually bzr will be a detriment to attracting new talent that will prefer to invest their skills in git. And there's no guarantee Canonical won't pull the plug on it at some point, regardless.
There are also tons of tools, web applications, and so on being developed for git. What exists for bzr is in process of bitrotting away (e.g. I tried to install the rebase plugin last night but it's several bzr revisions out of date, and did not work.)
Isn't git hard to learn? bzr seems so natural...
git has a reputation for having a high learning curve, and it's legitimately earned. But most all of us have at least had a little exposure to git, and there are plenty of good tutorials out there.
git was a struggle for me to learn, so I won't sugar coat it and say it'll be easy. But I will say if you haven't yet mastered git, then it's an important software development skill you're going to want to have beyond Inkscape anyway, since pretty much all other projects use it.
What about Launchpad and its bzr integration?
One of the reasons we picked bzr was because of its integration with the bug tracker, and yes that's pretty cool and something we'll lose making the transition. The good news is that unlike when we switched to bzr, there are now a number of good web apps and services (github clones, et al). So we'll have a wealth of options to consider when we get to this point.
Where will we host the repository? github? freedesktop?
One nice thing with git is that we will have 100% freedom in deciding where to host the official repo. We can even consider self-hosting it (e.g. on our website vm). We have lots and lots of options, and plenty of time to deliberate and decide on a plan.
Can it import our history? tags?
Yep. Lots of projects have preceeded us in bzr->git conversions and there's a rich set of well tested converter tools available.
Can we still do PPA recipe builds on Launchpad?
Sure can. Launchpad may only host bzr but it has a very good git importer. So we'd set up LP to import our git branch to a bzr tracking branch on LP and then it's business as normal.
Can we convert to git ASAP?
I know some people are anxious to move us over to git, and so am I, but we need to pace ourselves. Changing VCS is going to be disruptive to everyone, and it will take time before everyone's up to speed with it. As a project there are other changes which are more pressing, which we need to give priority to. If we rush into git, we're likely to make mistakes or at least cause unnecessary frustrations. Planned well, we can make the transition relatively smooth, and ensure there are tutorials and tips available as needed.
Bryce
There are also a few other repositories outside of the main branch. The inkscape-web repository and I think inkscape-docs has one too. These are bzr currently. and will need to be moved to keep consistency. Given the smaller numbers of people involved, they might be easier to move first once a suitable landing site is found.
The website deploys through bzr at the moment, but git is possible too. In fact if the git parent target is the webserver then I have post hooks that can run the required website scripts without a cron job. Which is nice.
Martin,
On 1 May 2015 at 00:55, Bryce Harrington <bryce@...961...> wrote:
On the last day of the hackfest, we discussed git over lunch. A few folks on IRC had questions about what we talked about, and I figured there'd be wider interest so am writing this up.
What is motivating us to switch? Is bzr going away?
Development of bzr has stopped. A couple years ago Canonical reassigned all the bzr devs to other projects, leaving just a skeleton staff to do bug maintenance (same was done with Launchpad). There had been a time when Canonical pushed bzr as the Cat's Meow, but I think the realization has sunk in that git has won the larger hearts and minds war.
bzr is not going away though, near as I can tell. There's no urgency to move to something else; we can stay with it indefinitely if we want. But it's a dead end tool. As we recruit new developers we will find more often they have git experience but not bzr; eventually bzr will be a detriment to attracting new talent that will prefer to invest their skills in git. And there's no guarantee Canonical won't pull the plug on it at some point, regardless.
There are also tons of tools, web applications, and so on being developed for git. What exists for bzr is in process of bitrotting away (e.g. I tried to install the rebase plugin last night but it's several bzr revisions out of date, and did not work.)
Isn't git hard to learn? bzr seems so natural...
git has a reputation for having a high learning curve, and it's legitimately earned. But most all of us have at least had a little exposure to git, and there are plenty of good tutorials out there.
git was a struggle for me to learn, so I won't sugar coat it and say it'll be easy. But I will say if you haven't yet mastered git, then it's an important software development skill you're going to want to have beyond Inkscape anyway, since pretty much all other projects use it.
What about Launchpad and its bzr integration?
One of the reasons we picked bzr was because of its integration with the bug tracker, and yes that's pretty cool and something we'll lose making the transition. The good news is that unlike when we switched to bzr, there are now a number of good web apps and services (github clones, et al). So we'll have a wealth of options to consider when we get to this point.
Where will we host the repository? github? freedesktop?
One nice thing with git is that we will have 100% freedom in deciding where to host the official repo. We can even consider self-hosting it (e.g. on our website vm). We have lots and lots of options, and plenty of time to deliberate and decide on a plan.
Can it import our history? tags?
Yep. Lots of projects have preceeded us in bzr->git conversions and there's a rich set of well tested converter tools available.
Can we still do PPA recipe builds on Launchpad?
Sure can. Launchpad may only host bzr but it has a very good git importer. So we'd set up LP to import our git branch to a bzr tracking branch on LP and then it's business as normal.
Can we convert to git ASAP?
I know some people are anxious to move us over to git, and so am I, but we need to pace ourselves. Changing VCS is going to be disruptive to everyone, and it will take time before everyone's up to speed with it. As a project there are other changes which are more pressing, which we need to give priority to. If we rush into git, we're likely to make mistakes or at least cause unnecessary frustrations. Planned well, we can make the transition relatively smooth, and ensure there are tutorials and tips available as needed.
Bryce
One dashboard for servers and applications across Physical-Virtual-Cloud Widest out-of-the-box monitoring support with 50+ applications Performance metrics, stats and reports that give you Actionable Insights Deep dive visibility with transaction tracing using APM Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y _______________________________________________ Inkscape-devel mailing list Inkscape-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/inkscape-devel
As a long time proponent of SVN, regretting Inkscape's switch to Bazaar, I encourage the switch to Git. Not because of Git itself. It is a major PITA. I use SourceTree (Windows and Mac) and it helps deal with Git's troubles, but I am certain Inkscape will need dedicated Gitters to resolve complicated issues that are bound to pop up. The reason I think Git is great for Inkscape is: Github. (or any similar site) Launchpad is lacking a lot of functionality that would make it worthwhile to use bzr/git/... Currently, branching is easy in bzr, but important things related to branches are absent on Launchpad.
Examples of what Github will give you that Launchpad does not have: - Code review: add comments in-line with code - Integration with Jenkins/Travis/etc. : upon pull request you can see if it breaks the build, without having to build yourself. - A simple button to merge a merge-request (pull request); incredible that Launchpad does not have this. For bug management, my impression is that Launchpad does a better job.
Using Git/Github will put more burden on the developer, but it greatly reduces the burden on the code reviewer. Switching to Git because of Git itself does not make sense to me, at all. For me, the advantage of switching is the much much better web-interface. The disadvantage is git itself.
-Johan
On 1-5-2015 7:41, Martin Owens wrote:
There are also a few other repositories outside of the main branch. The inkscape-web repository and I think inkscape-docs has one too. These are bzr currently. and will need to be moved to keep consistency. Given the smaller numbers of people involved, they might be easier to move first once a suitable landing site is found.
The website deploys through bzr at the moment, but git is possible too. In fact if the git parent target is the webserver then I have post hooks that can run the required website scripts without a cron job. Which is nice.
Martin,
On 1 May 2015 at 00:55, Bryce Harrington <bryce@...961...> wrote:
On the last day of the hackfest, we discussed git over lunch. A few folks on IRC had questions about what we talked about, and I figured there'd be wider interest so am writing this up.
What is motivating us to switch? Is bzr going away?
Development of bzr has stopped. A couple years ago Canonical reassigned all the bzr devs to other projects, leaving just a skeleton staff to do bug maintenance (same was done with Launchpad). There had been a time when Canonical pushed bzr as the Cat's Meow, but I think the realization has sunk in that git has won the larger hearts and minds war.
bzr is not going away though, near as I can tell. There's no urgency to move to something else; we can stay with it indefinitely if we want. But it's a dead end tool. As we recruit new developers we will find more often they have git experience but not bzr; eventually bzr will be a detriment to attracting new talent that will prefer to invest their skills in git. And there's no guarantee Canonical won't pull the plug on it at some point, regardless.
There are also tons of tools, web applications, and so on being developed for git. What exists for bzr is in process of bitrotting away (e.g. I tried to install the rebase plugin last night but it's several bzr revisions out of date, and did not work.)
Isn't git hard to learn? bzr seems so natural...
git has a reputation for having a high learning curve, and it's legitimately earned. But most all of us have at least had a little exposure to git, and there are plenty of good tutorials out there.
git was a struggle for me to learn, so I won't sugar coat it and say it'll be easy. But I will say if you haven't yet mastered git, then it's an important software development skill you're going to want to have beyond Inkscape anyway, since pretty much all other projects use it.
What about Launchpad and its bzr integration?
One of the reasons we picked bzr was because of its integration with the bug tracker, and yes that's pretty cool and something we'll lose making the transition. The good news is that unlike when we switched to bzr, there are now a number of good web apps and services (github clones, et al). So we'll have a wealth of options to consider when we get to this point.
Where will we host the repository? github? freedesktop?
One nice thing with git is that we will have 100% freedom in deciding where to host the official repo. We can even consider self-hosting it (e.g. on our website vm). We have lots and lots of options, and plenty of time to deliberate and decide on a plan.
Can it import our history? tags?
Yep. Lots of projects have preceeded us in bzr->git conversions and there's a rich set of well tested converter tools available.
Can we still do PPA recipe builds on Launchpad?
Sure can. Launchpad may only host bzr but it has a very good git importer. So we'd set up LP to import our git branch to a bzr tracking branch on LP and then it's business as normal.
Can we convert to git ASAP?
I know some people are anxious to move us over to git, and so am I, but we need to pace ourselves. Changing VCS is going to be disruptive to everyone, and it will take time before everyone's up to speed with it. As a project there are other changes which are more pressing, which we need to give priority to. If we rush into git, we're likely to make mistakes or at least cause unnecessary frustrations. Planned well, we can make the transition relatively smooth, and ensure there are tutorials and tips available as needed.
Bryce
On Fri, May 01, 2015 at 01:41:56AM -0400, Martin Owens wrote:
There are also a few other repositories outside of the main branch. The inkscape-web repository and I think inkscape-docs has one too. These are bzr currently. and will need to be moved to keep consistency. Given the smaller numbers of people involved, they might be easier to move first once a suitable landing site is found.
God thought. Since the website sort of develops at its own pace already, if everyone that works on it is okay with it being moved I could see it move to git sooner, as sort of an early colonist.
The website deploys through bzr at the moment, but git is possible too. In fact if the git parent target is the webserver then I have post hooks that can run the required website scripts without a cron job. Which is nice.
Bryce
Martin,
On 1 May 2015 at 00:55, Bryce Harrington <bryce@...961...> wrote:
On the last day of the hackfest, we discussed git over lunch. A few folks on IRC had questions about what we talked about, and I figured there'd be wider interest so am writing this up.
What is motivating us to switch? Is bzr going away?
Development of bzr has stopped. A couple years ago Canonical reassigned all the bzr devs to other projects, leaving just a skeleton staff to do bug maintenance (same was done with Launchpad). There had been a time when Canonical pushed bzr as the Cat's Meow, but I think the realization has sunk in that git has won the larger hearts and minds war.
bzr is not going away though, near as I can tell. There's no urgency to move to something else; we can stay with it indefinitely if we want. But it's a dead end tool. As we recruit new developers we will find more often they have git experience but not bzr; eventually bzr will be a detriment to attracting new talent that will prefer to invest their skills in git. And there's no guarantee Canonical won't pull the plug on it at some point, regardless.
There are also tons of tools, web applications, and so on being developed for git. What exists for bzr is in process of bitrotting away (e.g. I tried to install the rebase plugin last night but it's several bzr revisions out of date, and did not work.)
Isn't git hard to learn? bzr seems so natural...
git has a reputation for having a high learning curve, and it's legitimately earned. But most all of us have at least had a little exposure to git, and there are plenty of good tutorials out there.
git was a struggle for me to learn, so I won't sugar coat it and say it'll be easy. But I will say if you haven't yet mastered git, then it's an important software development skill you're going to want to have beyond Inkscape anyway, since pretty much all other projects use it.
What about Launchpad and its bzr integration?
One of the reasons we picked bzr was because of its integration with the bug tracker, and yes that's pretty cool and something we'll lose making the transition. The good news is that unlike when we switched to bzr, there are now a number of good web apps and services (github clones, et al). So we'll have a wealth of options to consider when we get to this point.
Where will we host the repository? github? freedesktop?
One nice thing with git is that we will have 100% freedom in deciding where to host the official repo. We can even consider self-hosting it (e.g. on our website vm). We have lots and lots of options, and plenty of time to deliberate and decide on a plan.
Can it import our history? tags?
Yep. Lots of projects have preceeded us in bzr->git conversions and there's a rich set of well tested converter tools available.
Can we still do PPA recipe builds on Launchpad?
Sure can. Launchpad may only host bzr but it has a very good git importer. So we'd set up LP to import our git branch to a bzr tracking branch on LP and then it's business as normal.
Can we convert to git ASAP?
I know some people are anxious to move us over to git, and so am I, but we need to pace ourselves. Changing VCS is going to be disruptive to everyone, and it will take time before everyone's up to speed with it. As a project there are other changes which are more pressing, which we need to give priority to. If we rush into git, we're likely to make mistakes or at least cause unnecessary frustrations. Planned well, we can make the transition relatively smooth, and ensure there are tutorials and tips available as needed.
Bryce
One dashboard for servers and applications across Physical-Virtual-Cloud Widest out-of-the-box monitoring support with 50+ applications Performance metrics, stats and reports that give you Actionable Insights Deep dive visibility with transaction tracing using APM Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y _______________________________________________ Inkscape-devel mailing list Inkscape-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/inkscape-devel
On May 1, 2015 12:56 AM, "Bryce Harrington" <bryce@...961...> wrote:
Where will we host the repository? github? freedesktop?
One nice thing with git is that we will have 100% freedom in deciding where to host the official repo. We can even consider self-hosting it (e.g. on our website vm). We have lots and lots of options, and plenty of time to deliberate and decide on a plan.
If there are too many objections to Github (ie, "it's not open source" or "it's too restrictive") or freedesktop (not always reliable), then I would not have any objections to perhaps hosting Gitlab or the likes on a custom website subdomain (trac.inkscape.org, anyone?)
I will put myself in the bucket of "new developers" that only knows about Git and not Bazaar. From my perspective Git is a tool that works great from terminal/git bash (with some use-cases not so well designed) but the hard part for me when introducing others is the workflow part to it. When to branch? When to merge? How to merge? When to rebase? When not to rebase? Release branches? Release tags? A common official repository, but that is centralized?
Answers to these questions are all project specific so I also find it wise to put the transition on hold for a while until build system and test framework is at the level we expect them. -- Christoffer Holmstedt
2015-05-03 21:25 GMT+02:00 Liam White <inkscapebrony@...400...>:
On May 1, 2015 12:56 AM, "Bryce Harrington" <bryce@...961...> wrote:
Where will we host the repository? github? freedesktop?
One nice thing with git is that we will have 100% freedom in deciding where to host the official repo. We can even consider self-hosting it (e.g. on our website vm). We have lots and lots of options, and plenty of time to deliberate and decide on a plan.
If there are too many objections to Github (ie, "it's not open source" or "it's too restrictive") or freedesktop (not always reliable), then I would not have any objections to perhaps hosting Gitlab or the likes on a custom website subdomain (trac.inkscape.org, anyone?)
One dashboard for servers and applications across Physical-Virtual-Cloud Widest out-of-the-box monitoring support with 50+ applications Performance metrics, stats and reports that give you Actionable Insights Deep dive visibility with transaction tracing using APM Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y _______________________________________________ Inkscape-devel mailing list Inkscape-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/inkscape-devel
Hi,
Le Vendredi 1 mai 2015 6h56, Bryce Harrington <bryce@...961...> a écrit :
What about Launchpad and its bzr integration? ... Where will we host the repository? github? freedesktop?
What if Launchpad adds support for hosting git repositories directly? See http://blog.launchpad.net/general/git-code-hosting-beta
Regards, -- Nicolas
On Mon, May 04, 2015 at 08:37:48AM +0000, Nicolas Dufour wrote:
Hi,
Le Vendredi 1 mai 2015 6h56, Bryce Harrington <bryce@...961...> a écrit :
What about Launchpad and its bzr integration? ... Where will we host the repository? github? freedesktop?
What if Launchpad adds support for hosting git repositories directly? See http://blog.launchpad.net/general/git-code-hosting-beta
Then that's one more hosting option we can consider, but we should still proceed as planned and look at all options equally. Thanks for the link!
While Launchpad was leading the pack on bzr integration when we switched to it, in recent years many other offerings have caught up or even surpassed it on the git side. From that link sounds like they have work to be done still to get Git integration on par with Bzr. So I think the debate would be well worth having, when we make the move to git.
Bryce
P.S. thanks for the reminder Nicolas about Git in LP, I had pushed and pushed for this years ago when I was at Canonical to seemingly no avail, so it's a pleasant surprise to finally see them moving ahead with it. Part of me thinks it may be too little too late, but we still have lots of time before we switch so we can wait and see how things develop for now.
On Mon, 2015-05-04 at 10:19 -0700, Bryce Harrington wrote:
P.S. thanks for the reminder Nicolas about Git in LP, I had pushed and pushed for this years ago when I was at Canonical to seemingly no avail, so it's a pleasant surprise to finally see them moving ahead with it. Part of me thinks it may be too little too late, but we still have lots of time before we switch so we can wait and see how things develop for now.
Now that Canonical has some folks assigned to do feature work on LP it should help some there. There is, as you noted, a backlog of feature requests for them to work through though.
Ted
participants (7)
-
Bryce Harrington
-
Christoffer Holmstedt
-
Johan Engelen
-
Liam White
-
Martin Owens
-
Nicolas Dufour
-
Ted Gould