Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
Sorry for a long delay, just catching up on a ton of dev mail this morning. FWIW, I agree that leaving feature/WIP branches in the main repository is bad practice. The ease and flexibility of branching in Git leads to a strong tendency towards proliferation of these things, and we really ought to apply some discipline to the process to keep the repo history clean. The detailed instructions on our Wiki re explicit re: use of forks for contributions. All I see in the top-level "Contributing" page, however, is this: >>> Use a pull request to submit a code patch to the github mirror. Any new >>> changes should be targeted at the "develop" branch. Perhaps we should at least add a brief note here about forking? Thanks, Blake On 6/11/20, 11:25 PM, "Jacob Barrett" wrote: > On Jun 11, 2020, at 8:41 PM, Owen Nichols wrote: > > -1 for “banning” :facepalm: Sorry, poor choice of words. How about “strongly discouraged” because of the harm enumerated perviously. > > The Geode community has strong precedent for protecting developers’ freedom to choose what works best for them. Not to the detriment of others in the community. > Maybe check if your graphical git tool-of-choice allows a branch filter regex, or consider git clone --single-branch? Whether someone filters or not the issues enumerated exist even if hidden away. -Jake
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
> On Jun 11, 2020, at 8:41 PM, Owen Nichols wrote: > > -1 for “banning” :facepalm: Sorry, poor choice of words. How about “strongly discouraged” because of the harm enumerated perviously. > > The Geode community has strong precedent for protecting developers’ freedom > to choose what works best for them. Not to the detriment of others in the community. > Maybe check if your graphical git tool-of-choice allows a branch filter > regex, or consider git clone --single-branch? Whether someone filters or not the issues enumerated exist even if hidden away. -Jake
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
-1 for “banning” The Geode community has strong precedent for protecting developers’ freedom to choose what works best for them. Maybe check if your graphical git tool-of-choice allows a branch filter regex, or consider git clone --single-branch? -Owen On June 11, 2020 at 5:23:20 PM PDT, Jinmei Liao wrote: +1 for ban the use of geode repo for feature branches. Less clutter is better. From: Jacob Barrett Sent: Tuesday, June 2, 2020 3:42 PM To: dev@geode.apache.org Subject: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches I know this has been brought up multiple times without resolution. I want us resolve to ban the use of Geode repository for work in progress, feature branches, or any other branches that are not release or support branches. There is no reason given the nature of GitHub why you can’t fork the repository to contribute. * Work done on these branches results in the ASF bots updating the associated JIRAs and email blasting all of us with your work. * People don’t clean up these branches, which leads to a mess of branches on everyones clones and in the UI. * All your intermediate commits get synced to the repo, which bloats the repo for everyone else. Even your commits you rebase over and force push are left in the repo. When you delete your branch these commits are not removed. There is no way for us to prune unreferenced commits. Nobody else needs your commits outside of what was merged to a production branch. If anyone has a use case for working directly from Geode repo that can’t work from a fork please post it here so we can resolve. Thanks, Jake
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
+1 for ban the use of geode repo for feature branches. Less clutter is better. From: Jacob Barrett Sent: Tuesday, June 2, 2020 3:42 PM To: dev@geode.apache.org Subject: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches I know this has been brought up multiple times without resolution. I want us resolve to ban the use of Geode repository for work in progress, feature branches, or any other branches that are not release or support branches. There is no reason given the nature of GitHub why you can’t fork the repository to contribute. * Work done on these branches results in the ASF bots updating the associated JIRAs and email blasting all of us with your work. * People don’t clean up these branches, which leads to a mess of branches on everyones clones and in the UI. * All your intermediate commits get synced to the repo, which bloats the repo for everyone else. Even your commits you rebase over and force push are left in the repo. When you delete your branch these commits are not removed. There is no way for us to prune unreferenced commits. Nobody else needs your commits outside of what was merged to a production branch. If anyone has a use case for working directly from Geode repo that can’t work from a fork please post it here so we can resolve. Thanks, Jake
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
> Suppose I want to commit to another contributor's fork. How can they grant > me permission to do so? (This is a common predicament for me when I'm > reviewing doc PRs.) Just as a note: if there is a PR and it is from a fork, the person who opens the PR can check a box that says "Allow contributors to commit to the PR" (or something like that). That box allows anyone who is committer to commit to that PR regardless if it is fork. -michael From: Jianxia Chen Sent: Wednesday, June 3, 2020 17:27 To: dev@geode.apache.org Subject: Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches The contributor has to add you as a collaborator of the contributor’s fork. On Wed, Jun 3, 2020 at 5:05 PM Dave Barnes wrote: > Suppose I want to commit to another contributor's fork. How can they grant > me permission to do so? (This is a common predicament for me when I'm > reviewing doc PRs.) > > > On Wed, Jun 3, 2020 at 2:04 PM Xiaojian Zhou wrote: > > > We have discussed that when in Common team. The current solution worked > > perfectly. > > > > One person will merge the develop into feature/GEODE-7665 (which > > conceptually can be anyone. I did 2 times) every week. Now Naba is taking > > the responsibility to do the weekly merge. He did great! > > > > Fork will cause many other issues, it will still need a person to > maintain > > it. I feel fork is only suitable for a work that will be finished within > a > > week. > > > > Regards > > Gester > > > > On 6/2/20, 4:41 PM, "Nabarun Nag" wrote: > > > > I don’t think it is right to make the open source Geode Community to > > work on my personal fork > > > > Regards > > Naba > > > > > > -Original Message- > > From: Mark Hanson > > Sent: Tuesday, June 2, 2020 4:35 PM > > To: dev@geode.apache.org > > Subject: Re: [DISCUSSION] Stop using the Geode Repository for > > Feature/WIP Branches > > > > While I am not 100% sure, I understand your thoughts here, I am > pretty > > sure I do. We have already done such work in a branch in a fork > (Micrometer > > work). The only real gotcha was that there needed to be one person at > least > > as a collaborator, in case of vacations and such. > > > > All of the things you have specified are possible within the confines > > of a fork. > > > > Thanks, > > Mark > > > > On 6/2/20, 4:29 PM, "Nabarun Nag" wrote: > > > > - We are maintaining feature/GEODE-7665 which is the feature > > branch for PR clear work on which multiple developers are working on. > > - We are maintaining this in Geode repository. > > - All sub-tasks of GEODE-7665 are merged into this feature > branch. > > - Anyone in the Geode community can work on any subtask > > - This is a long running, and a massive feature development which > > is manipulating core code on Apache Geode. Hence all work is pushed to > the > > feature branch to keep develop isolated from a regression introduced in > PR > > clear work. > > - We have previously used release flags for Lucene work which we > > found to be inefficient and unnecessary extra work. > > > > We vote that PR clear feature branch be maintained in the Geode > > Repository as this is a long running, massive effort involving everyone > > from the community. > > > > When the PR clear tasks are completed, the branch will be > > rigorously tested and then squash merged into develop and the feature > > branch will be deleted. > > > > > > Regards > > Naba > > > > -Original Message- > > From: Jacob Barrett > > Sent: Tuesday, June 2, 2020 3:43 PM > > To: dev@geode.apache.org > > Subject: [DISCUSSION] Stop using the Geode Repository for > > Feature/WIP Branches > > > > I know this has been brought up multiple times without > resolution. > > I want us resolve to ban the use of Geode repository for work in > progress, > > feature branches, or any other branches that are not release or support > > branches. There is no reason given the nature of GitHub why you can’t > fork > > the repository to contribute. > > > > * Work done on these branches results in the ASF bots updating > the > > associated JIRAs and email blasting all of us with your work. > > > > * Peo
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
The contributor has to add you as a collaborator of the contributor’s fork. On Wed, Jun 3, 2020 at 5:05 PM Dave Barnes wrote: > Suppose I want to commit to another contributor's fork. How can they grant > me permission to do so? (This is a common predicament for me when I'm > reviewing doc PRs.) > > > On Wed, Jun 3, 2020 at 2:04 PM Xiaojian Zhou wrote: > > > We have discussed that when in Common team. The current solution worked > > perfectly. > > > > One person will merge the develop into feature/GEODE-7665 (which > > conceptually can be anyone. I did 2 times) every week. Now Naba is taking > > the responsibility to do the weekly merge. He did great! > > > > Fork will cause many other issues, it will still need a person to > maintain > > it. I feel fork is only suitable for a work that will be finished within > a > > week. > > > > Regards > > Gester > > > > On 6/2/20, 4:41 PM, "Nabarun Nag" wrote: > > > > I don’t think it is right to make the open source Geode Community to > > work on my personal fork > > > > Regards > > Naba > > > > > > -Original Message----- > > From: Mark Hanson > > Sent: Tuesday, June 2, 2020 4:35 PM > > To: dev@geode.apache.org > > Subject: Re: [DISCUSSION] Stop using the Geode Repository for > > Feature/WIP Branches > > > > While I am not 100% sure, I understand your thoughts here, I am > pretty > > sure I do. We have already done such work in a branch in a fork > (Micrometer > > work). The only real gotcha was that there needed to be one person at > least > > as a collaborator, in case of vacations and such. > > > > All of the things you have specified are possible within the confines > > of a fork. > > > > Thanks, > > Mark > > > > On 6/2/20, 4:29 PM, "Nabarun Nag" wrote: > > > > - We are maintaining feature/GEODE-7665 which is the feature > > branch for PR clear work on which multiple developers are working on. > > - We are maintaining this in Geode repository. > > - All sub-tasks of GEODE-7665 are merged into this feature > branch. > > - Anyone in the Geode community can work on any subtask > > - This is a long running, and a massive feature development which > > is manipulating core code on Apache Geode. Hence all work is pushed to > the > > feature branch to keep develop isolated from a regression introduced in > PR > > clear work. > > - We have previously used release flags for Lucene work which we > > found to be inefficient and unnecessary extra work. > > > > We vote that PR clear feature branch be maintained in the Geode > > Repository as this is a long running, massive effort involving everyone > > from the community. > > > > When the PR clear tasks are completed, the branch will be > > rigorously tested and then squash merged into develop and the feature > > branch will be deleted. > > > > > > Regards > > Naba > > > > -Original Message- > > From: Jacob Barrett > > Sent: Tuesday, June 2, 2020 3:43 PM > > To: dev@geode.apache.org > > Subject: [DISCUSSION] Stop using the Geode Repository for > > Feature/WIP Branches > > > > I know this has been brought up multiple times without > resolution. > > I want us resolve to ban the use of Geode repository for work in > progress, > > feature branches, or any other branches that are not release or support > > branches. There is no reason given the nature of GitHub why you can’t > fork > > the repository to contribute. > > > > * Work done on these branches results in the ASF bots updating > the > > associated JIRAs and email blasting all of us with your work. > > > > * People don’t clean up these branches, which leads to a mess of > > branches on everyones clones and in the UI. > > > > * All your intermediate commits get synced to the repo, which > > bloats the repo for everyone else. Even your commits you rebase over and > > force push are left in the repo. When you delete your branch these > commits > > are not removed. There is no way for us to prune unreferenced commits. > > Nobody else needs your commits outside of what was merged to a production > > branch. > > > > If anyone has a use case for working directly from Geode repo > that > > can’t work from a fork please post it here so we can resolve. > > > > Thanks, > > Jake > > > > > > > > > > > > >
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
Suppose I want to commit to another contributor's fork. How can they grant me permission to do so? (This is a common predicament for me when I'm reviewing doc PRs.) On Wed, Jun 3, 2020 at 2:04 PM Xiaojian Zhou wrote: > We have discussed that when in Common team. The current solution worked > perfectly. > > One person will merge the develop into feature/GEODE-7665 (which > conceptually can be anyone. I did 2 times) every week. Now Naba is taking > the responsibility to do the weekly merge. He did great! > > Fork will cause many other issues, it will still need a person to maintain > it. I feel fork is only suitable for a work that will be finished within a > week. > > Regards > Gester > > On 6/2/20, 4:41 PM, "Nabarun Nag" wrote: > > I don’t think it is right to make the open source Geode Community to > work on my personal fork > > Regards > Naba > > > -Original Message- > From: Mark Hanson > Sent: Tuesday, June 2, 2020 4:35 PM > To: dev@geode.apache.org > Subject: Re: [DISCUSSION] Stop using the Geode Repository for > Feature/WIP Branches > > While I am not 100% sure, I understand your thoughts here, I am pretty > sure I do. We have already done such work in a branch in a fork (Micrometer > work). The only real gotcha was that there needed to be one person at least > as a collaborator, in case of vacations and such. > > All of the things you have specified are possible within the confines > of a fork. > > Thanks, > Mark > > On 6/2/20, 4:29 PM, "Nabarun Nag" wrote: > > - We are maintaining feature/GEODE-7665 which is the feature > branch for PR clear work on which multiple developers are working on. > - We are maintaining this in Geode repository. > - All sub-tasks of GEODE-7665 are merged into this feature branch. > - Anyone in the Geode community can work on any subtask > - This is a long running, and a massive feature development which > is manipulating core code on Apache Geode. Hence all work is pushed to the > feature branch to keep develop isolated from a regression introduced in PR > clear work. > - We have previously used release flags for Lucene work which we > found to be inefficient and unnecessary extra work. > > We vote that PR clear feature branch be maintained in the Geode > Repository as this is a long running, massive effort involving everyone > from the community. > > When the PR clear tasks are completed, the branch will be > rigorously tested and then squash merged into develop and the feature > branch will be deleted. > > > Regards > Naba > > -Original Message- > From: Jacob Barrett > Sent: Tuesday, June 2, 2020 3:43 PM > To: dev@geode.apache.org > Subject: [DISCUSSION] Stop using the Geode Repository for > Feature/WIP Branches > > I know this has been brought up multiple times without resolution. > I want us resolve to ban the use of Geode repository for work in progress, > feature branches, or any other branches that are not release or support > branches. There is no reason given the nature of GitHub why you can’t fork > the repository to contribute. > > * Work done on these branches results in the ASF bots updating the > associated JIRAs and email blasting all of us with your work. > > * People don’t clean up these branches, which leads to a mess of > branches on everyones clones and in the UI. > > * All your intermediate commits get synced to the repo, which > bloats the repo for everyone else. Even your commits you rebase over and > force push are left in the repo. When you delete your branch these commits > are not removed. There is no way for us to prune unreferenced commits. > Nobody else needs your commits outside of what was merged to a production > branch. > > If anyone has a use case for working directly from Geode repo that > can’t work from a fork please post it here so we can resolve. > > Thanks, > Jake > > > > > >
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
We have discussed that when in Common team. The current solution worked perfectly. One person will merge the develop into feature/GEODE-7665 (which conceptually can be anyone. I did 2 times) every week. Now Naba is taking the responsibility to do the weekly merge. He did great! Fork will cause many other issues, it will still need a person to maintain it. I feel fork is only suitable for a work that will be finished within a week. Regards Gester On 6/2/20, 4:41 PM, "Nabarun Nag" wrote: I don’t think it is right to make the open source Geode Community to work on my personal fork Regards Naba -Original Message- From: Mark Hanson Sent: Tuesday, June 2, 2020 4:35 PM To: dev@geode.apache.org Subject: Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches While I am not 100% sure, I understand your thoughts here, I am pretty sure I do. We have already done such work in a branch in a fork (Micrometer work). The only real gotcha was that there needed to be one person at least as a collaborator, in case of vacations and such. All of the things you have specified are possible within the confines of a fork. Thanks, Mark On 6/2/20, 4:29 PM, "Nabarun Nag" wrote: - We are maintaining feature/GEODE-7665 which is the feature branch for PR clear work on which multiple developers are working on. - We are maintaining this in Geode repository. - All sub-tasks of GEODE-7665 are merged into this feature branch. - Anyone in the Geode community can work on any subtask - This is a long running, and a massive feature development which is manipulating core code on Apache Geode. Hence all work is pushed to the feature branch to keep develop isolated from a regression introduced in PR clear work. - We have previously used release flags for Lucene work which we found to be inefficient and unnecessary extra work. We vote that PR clear feature branch be maintained in the Geode Repository as this is a long running, massive effort involving everyone from the community. When the PR clear tasks are completed, the branch will be rigorously tested and then squash merged into develop and the feature branch will be deleted. Regards Naba -Original Message- From: Jacob Barrett Sent: Tuesday, June 2, 2020 3:43 PM To: dev@geode.apache.org Subject: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches I know this has been brought up multiple times without resolution. I want us resolve to ban the use of Geode repository for work in progress, feature branches, or any other branches that are not release or support branches. There is no reason given the nature of GitHub why you can’t fork the repository to contribute. * Work done on these branches results in the ASF bots updating the associated JIRAs and email blasting all of us with your work. * People don’t clean up these branches, which leads to a mess of branches on everyones clones and in the UI. * All your intermediate commits get synced to the repo, which bloats the repo for everyone else. Even your commits you rebase over and force push are left in the repo. When you delete your branch these commits are not removed. There is no way for us to prune unreferenced commits. Nobody else needs your commits outside of what was merged to a production branch. If anyone has a use case for working directly from Geode repo that can’t work from a fork please post it here so we can resolve. Thanks, Jake
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
For features that need collaboration among multiple contributors/committers and extended amount of time, using a feature branch in ASF repo is more convenient, compared to using a fork. Other than that, using a fork is preferable. Thanks, Jianxia On Wed, Jun 3, 2020 at 11:06 AM Mark Hanson wrote: > There is also one other positive of having it in the ASF repo which is > visibility to other people committing breaking changes. That might help > with coordination. > > Thanks, > Mark > > > On 6/3/20, 10:51 AM, "Nabarun Nag" wrote: > > Thank you Aaron. > > We will continue using feature branch in ASF repo for development of > PR clear work. > > Yes, we can manage access to personal/non-ASF hosted forks but I do > not have the list of people to set that up. This is automatic default when > we create in ASF repositories. > > Also, I am vehemently against using one person's personal fork for > massive collaborative open source feature development involving the entire > Geode Community. Every collaborator should have the same rights on the > source code rather than a gatekeeper. > > But again, I agree it is wrong to use the repo to create short living > branches with single contributor and then not cleaning up after the branch > is merged. > > Regards > Naba > > -Original Message- > From: Aaron Lindsey > Sent: Wednesday, June 3, 2020 8:50 AM > To: dev@geode.apache.org > Subject: Re: [DISCUSSION] Stop using the Geode Repository for > Feature/WIP Branches > > I'm on board with using forks — the exception being Naba's use case > for long running feature branches where developers actually want to open a > PR into the branch > > ____________ > From: Bruce Schuchardt > Sent: Wednesday, June 3, 2020 8:23 AM > To: dev@geode.apache.org > Subject: Re: [DISCUSSION] Stop using the Geode Repository for > Feature/WIP Branches > > Jake, you make some good points that I hadn't considered before. > > On 6/2/20, 3:42 PM, "Jacob Barrett" wrote: > > I know this has been brought up multiple times without resolution. > I want us resolve to ban the use of Geode repository for work in progress, > feature branches, or any other branches that are not release or support > branches. There is no reason given the nature of GitHub why you can’t fork > the repository to contribute. > > * Work done on these branches results in the ASF bots updating the > associated JIRAs and email blasting all of us with your work. > > * People don’t clean up these branches, which leads to a mess of > branches on everyones clones and in the UI. > > * All your intermediate commits get synced to the repo, which > bloats the repo for everyone else. Even your commits you rebase over and > force push are left in the repo. When you delete your branch these commits > are not removed. There is no way for us to prune unreferenced commits. > Nobody else needs your commits outside of what was merged to a production > branch. > > If anyone has a use case for working directly from Geode repo that > can’t work from a fork please post it here so we can resolve. > > Thanks, > Jake > > > > > > >
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
There is also one other positive of having it in the ASF repo which is visibility to other people committing breaking changes. That might help with coordination. Thanks, Mark On 6/3/20, 10:51 AM, "Nabarun Nag" wrote: Thank you Aaron. We will continue using feature branch in ASF repo for development of PR clear work. Yes, we can manage access to personal/non-ASF hosted forks but I do not have the list of people to set that up. This is automatic default when we create in ASF repositories. Also, I am vehemently against using one person's personal fork for massive collaborative open source feature development involving the entire Geode Community. Every collaborator should have the same rights on the source code rather than a gatekeeper. But again, I agree it is wrong to use the repo to create short living branches with single contributor and then not cleaning up after the branch is merged. Regards Naba -Original Message- From: Aaron Lindsey Sent: Wednesday, June 3, 2020 8:50 AM To: dev@geode.apache.org Subject: Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches I'm on board with using forks — the exception being Naba's use case for long running feature branches where developers actually want to open a PR into the branch From: Bruce Schuchardt Sent: Wednesday, June 3, 2020 8:23 AM To: dev@geode.apache.org Subject: Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches Jake, you make some good points that I hadn't considered before. On 6/2/20, 3:42 PM, "Jacob Barrett" wrote: I know this has been brought up multiple times without resolution. I want us resolve to ban the use of Geode repository for work in progress, feature branches, or any other branches that are not release or support branches. There is no reason given the nature of GitHub why you can’t fork the repository to contribute. * Work done on these branches results in the ASF bots updating the associated JIRAs and email blasting all of us with your work. * People don’t clean up these branches, which leads to a mess of branches on everyones clones and in the UI. * All your intermediate commits get synced to the repo, which bloats the repo for everyone else. Even your commits you rebase over and force push are left in the repo. When you delete your branch these commits are not removed. There is no way for us to prune unreferenced commits. Nobody else needs your commits outside of what was merged to a production branch. If anyone has a use case for working directly from Geode repo that can’t work from a fork please post it here so we can resolve. Thanks, Jake
RE: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
Thank you Aaron. We will continue using feature branch in ASF repo for development of PR clear work. Yes, we can manage access to personal/non-ASF hosted forks but I do not have the list of people to set that up. This is automatic default when we create in ASF repositories. Also, I am vehemently against using one person's personal fork for massive collaborative open source feature development involving the entire Geode Community. Every collaborator should have the same rights on the source code rather than a gatekeeper. But again, I agree it is wrong to use the repo to create short living branches with single contributor and then not cleaning up after the branch is merged. Regards Naba -Original Message- From: Aaron Lindsey Sent: Wednesday, June 3, 2020 8:50 AM To: dev@geode.apache.org Subject: Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches I'm on board with using forks — the exception being Naba's use case for long running feature branches where developers actually want to open a PR into the branch From: Bruce Schuchardt Sent: Wednesday, June 3, 2020 8:23 AM To: dev@geode.apache.org Subject: Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches Jake, you make some good points that I hadn't considered before. On 6/2/20, 3:42 PM, "Jacob Barrett" wrote: I know this has been brought up multiple times without resolution. I want us resolve to ban the use of Geode repository for work in progress, feature branches, or any other branches that are not release or support branches. There is no reason given the nature of GitHub why you can’t fork the repository to contribute. * Work done on these branches results in the ASF bots updating the associated JIRAs and email blasting all of us with your work. * People don’t clean up these branches, which leads to a mess of branches on everyones clones and in the UI. * All your intermediate commits get synced to the repo, which bloats the repo for everyone else. Even your commits you rebase over and force push are left in the repo. When you delete your branch these commits are not removed. There is no way for us to prune unreferenced commits. Nobody else needs your commits outside of what was merged to a production branch. If anyone has a use case for working directly from Geode repo that can’t work from a fork please post it here so we can resolve. Thanks, Jake
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
I'm on board with using forks — the exception being Naba's use case for long running feature branches where developers actually want to open a PR into the branch From: Bruce Schuchardt Sent: Wednesday, June 3, 2020 8:23 AM To: dev@geode.apache.org Subject: Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches Jake, you make some good points that I hadn't considered before. On 6/2/20, 3:42 PM, "Jacob Barrett" wrote: I know this has been brought up multiple times without resolution. I want us resolve to ban the use of Geode repository for work in progress, feature branches, or any other branches that are not release or support branches. There is no reason given the nature of GitHub why you can’t fork the repository to contribute. * Work done on these branches results in the ASF bots updating the associated JIRAs and email blasting all of us with your work. * People don’t clean up these branches, which leads to a mess of branches on everyones clones and in the UI. * All your intermediate commits get synced to the repo, which bloats the repo for everyone else. Even your commits you rebase over and force push are left in the repo. When you delete your branch these commits are not removed. There is no way for us to prune unreferenced commits. Nobody else needs your commits outside of what was merged to a production branch. If anyone has a use case for working directly from Geode repo that can’t work from a fork please post it here so we can resolve. Thanks, Jake
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
Jake, you make some good points that I hadn't considered before. On 6/2/20, 3:42 PM, "Jacob Barrett" wrote: I know this has been brought up multiple times without resolution. I want us resolve to ban the use of Geode repository for work in progress, feature branches, or any other branches that are not release or support branches. There is no reason given the nature of GitHub why you can’t fork the repository to contribute. * Work done on these branches results in the ASF bots updating the associated JIRAs and email blasting all of us with your work. * People don’t clean up these branches, which leads to a mess of branches on everyones clones and in the UI. * All your intermediate commits get synced to the repo, which bloats the repo for everyone else. Even your commits you rebase over and force push are left in the repo. When you delete your branch these commits are not removed. There is no way for us to prune unreferenced commits. Nobody else needs your commits outside of what was merged to a production branch. If anyone has a use case for working directly from Geode repo that can’t work from a fork please post it here so we can resolve. Thanks, Jake
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
I lean towards forks as well. I understand Naba's concerns but for most of the work we do, forks are a straightforward way to work on contributions to Geode. It's easy to give people rights on your fork if you work with multiple contributors. Joris From: Ernie Burghardt Sent: June 2, 2020 22:17 To: dev@geode.apache.org Subject: Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches I'm a fan of features on forks! It's fairly simple to make forks accessible to other folks. I know this isn't a vote, but I'm a +1 for the concept... EB On 6/2/20, 3:42 PM, "Jacob Barrett" wrote: I know this has been brought up multiple times without resolution. I want us resolve to ban the use of Geode repository for work in progress, feature branches, or any other branches that are not release or support branches. There is no reason given the nature of GitHub why you can’t fork the repository to contribute. * Work done on these branches results in the ASF bots updating the associated JIRAs and email blasting all of us with your work. * People don’t clean up these branches, which leads to a mess of branches on everyones clones and in the UI. * All your intermediate commits get synced to the repo, which bloats the repo for everyone else. Even your commits you rebase over and force push are left in the repo. When you delete your branch these commits are not removed. There is no way for us to prune unreferenced commits. Nobody else needs your commits outside of what was merged to a production branch. If anyone has a use case for working directly from Geode repo that can’t work from a fork please post it here so we can resolve. Thanks, Jake
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
I'm a fan of features on forks! It's fairly simple to make forks accessible to other folks. I know this isn't a vote, but I'm a +1 for the concept... EB On 6/2/20, 3:42 PM, "Jacob Barrett" wrote: I know this has been brought up multiple times without resolution. I want us resolve to ban the use of Geode repository for work in progress, feature branches, or any other branches that are not release or support branches. There is no reason given the nature of GitHub why you can’t fork the repository to contribute. * Work done on these branches results in the ASF bots updating the associated JIRAs and email blasting all of us with your work. * People don’t clean up these branches, which leads to a mess of branches on everyones clones and in the UI. * All your intermediate commits get synced to the repo, which bloats the repo for everyone else. Even your commits you rebase over and force push are left in the repo. When you delete your branch these commits are not removed. There is no way for us to prune unreferenced commits. Nobody else needs your commits outside of what was merged to a production branch. If anyone has a use case for working directly from Geode repo that can’t work from a fork please post it here so we can resolve. Thanks, Jake
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
> On Jun 2, 2020, at 4:50 PM, Nabarun Nag wrote: > > - Unified location, where anyone who wants to work on the feature can find > the feature branch on the geode-repository > - Visibility, the PRs to the geode repository can be viewed by everyone in > the Geode community. Which will not happen if they are raised to my fork. > - Long running feature development happens in feature branches in Apache > projects Eg: Lucene and Kafka. > Great rational for long running feature work being centralized. While all of these can be addressed in forks by subscribing to that fork, I would be amenable to amend the proposal to allow for long running features, as defined likely by their RFC, to be conducted in the main repository.
RE: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
I agree, I am not justifying the use of repository for small bug fixes etc. or short term individual tasks I am justifying why PR clear has a feature branch in the geode repository. Regards Naba -Original Message- From: Jacob Barrett Sent: Tuesday, June 2, 2020 4:48 PM To: dev@geode.apache.org Subject: Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches > On Jun 2, 2020, at 4:29 PM, Nabarun Nag wrote: > > - We are maintaining feature/GEODE-7665 which is the feature branch for PR > clear work on which multiple developers are working on. > - We are maintaining this in Geode repository. > - All sub-tasks of GEODE-7665 are merged into this feature branch. > - Anyone in the Geode community can work on any subtask > - This is a long running, and a massive feature development which is > manipulating core code on Apache Geode. Hence all work is pushed to the > feature branch to keep develop isolated from a regression introduced in PR > clear work. > - We have previously used release flags for Lucene work which we found to be > inefficient and unnecessary extra work. > > We vote that PR clear feature branch be maintained in the Geode Repository as > this is a long running, massive effort involving everyone from the community. > > When the PR clear tasks are completed, the branch will be rigorously tested > and then squash merged into develop and the feature branch will be deleted. I think there can always be exceptions for any rule. I can even understand the desire to have long running branches for large scale refactors or features maintained centrally. The issue is the most of the branches are not of this exceptional scale. I want to eliminate this clutter and consider exceptions where it makes sense. Perhaps which we could ask the ASF to have its bots ignore specifically prefixed branches to future reduce the noise produced by using the Geode repo in these exceptional cases. -Jake
RE: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
- Unified location, where anyone who wants to work on the feature can find the feature branch on the geode-repository - Visibility, the PRs to the geode repository can be viewed by everyone in the Geode community. Which will not happen if they are raised to my fork. - Long running feature development happens in feature branches in Apache projects Eg: Lucene and Kafka. Regards Naba -Original Message- From: Jacob Barrett Sent: Tuesday, June 2, 2020 4:45 PM To: dev@geode.apache.org Subject: Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches > On Jun 2, 2020, at 4:40 PM, Nabarun Nag wrote: > > I don’t think it is right to make the open source Geode Community to work on > my personal fork Why not? I can fork your fork. I can PR to your fork. Its sort of what Git was made for, no single source repository. Can you elaborate on why you feel it isn’t right? -Jake
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
> On Jun 2, 2020, at 4:29 PM, Nabarun Nag wrote: > > - We are maintaining feature/GEODE-7665 which is the feature branch for PR > clear work on which multiple developers are working on. > - We are maintaining this in Geode repository. > - All sub-tasks of GEODE-7665 are merged into this feature branch. > - Anyone in the Geode community can work on any subtask > - This is a long running, and a massive feature development which is > manipulating core code on Apache Geode. Hence all work is pushed to the > feature branch to keep develop isolated from a regression introduced in PR > clear work. > - We have previously used release flags for Lucene work which we found to be > inefficient and unnecessary extra work. > > We vote that PR clear feature branch be maintained in the Geode Repository as > this is a long running, massive effort involving everyone from the community. > > When the PR clear tasks are completed, the branch will be rigorously tested > and then squash merged into develop and the feature branch will be deleted. I think there can always be exceptions for any rule. I can even understand the desire to have long running branches for large scale refactors or features maintained centrally. The issue is the most of the branches are not of this exceptional scale. I want to eliminate this clutter and consider exceptions where it makes sense. Perhaps which we could ask the ASF to have its bots ignore specifically prefixed branches to future reduce the noise produced by using the Geode repo in these exceptional cases. -Jake
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
> On Jun 2, 2020, at 4:40 PM, Nabarun Nag wrote: > > I don’t think it is right to make the open source Geode Community to work on > my personal fork Why not? I can fork your fork. I can PR to your fork. Its sort of what Git was made for, no single source repository. Can you elaborate on why you feel it isn’t right? -Jake
RE: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
I don’t think it is right to make the open source Geode Community to work on my personal fork Regards Naba -Original Message- From: Mark Hanson Sent: Tuesday, June 2, 2020 4:35 PM To: dev@geode.apache.org Subject: Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches While I am not 100% sure, I understand your thoughts here, I am pretty sure I do. We have already done such work in a branch in a fork (Micrometer work). The only real gotcha was that there needed to be one person at least as a collaborator, in case of vacations and such. All of the things you have specified are possible within the confines of a fork. Thanks, Mark On 6/2/20, 4:29 PM, "Nabarun Nag" wrote: - We are maintaining feature/GEODE-7665 which is the feature branch for PR clear work on which multiple developers are working on. - We are maintaining this in Geode repository. - All sub-tasks of GEODE-7665 are merged into this feature branch. - Anyone in the Geode community can work on any subtask - This is a long running, and a massive feature development which is manipulating core code on Apache Geode. Hence all work is pushed to the feature branch to keep develop isolated from a regression introduced in PR clear work. - We have previously used release flags for Lucene work which we found to be inefficient and unnecessary extra work. We vote that PR clear feature branch be maintained in the Geode Repository as this is a long running, massive effort involving everyone from the community. When the PR clear tasks are completed, the branch will be rigorously tested and then squash merged into develop and the feature branch will be deleted. Regards Naba -Original Message- From: Jacob Barrett Sent: Tuesday, June 2, 2020 3:43 PM To: dev@geode.apache.org Subject: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches I know this has been brought up multiple times without resolution. I want us resolve to ban the use of Geode repository for work in progress, feature branches, or any other branches that are not release or support branches. There is no reason given the nature of GitHub why you can’t fork the repository to contribute. * Work done on these branches results in the ASF bots updating the associated JIRAs and email blasting all of us with your work. * People don’t clean up these branches, which leads to a mess of branches on everyones clones and in the UI. * All your intermediate commits get synced to the repo, which bloats the repo for everyone else. Even your commits you rebase over and force push are left in the repo. When you delete your branch these commits are not removed. There is no way for us to prune unreferenced commits. Nobody else needs your commits outside of what was merged to a production branch. If anyone has a use case for working directly from Geode repo that can’t work from a fork please post it here so we can resolve. Thanks, Jake
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
While I am not 100% sure, I understand your thoughts here, I am pretty sure I do. We have already done such work in a branch in a fork (Micrometer work). The only real gotcha was that there needed to be one person at least as a collaborator, in case of vacations and such. All of the things you have specified are possible within the confines of a fork. Thanks, Mark On 6/2/20, 4:29 PM, "Nabarun Nag" wrote: - We are maintaining feature/GEODE-7665 which is the feature branch for PR clear work on which multiple developers are working on. - We are maintaining this in Geode repository. - All sub-tasks of GEODE-7665 are merged into this feature branch. - Anyone in the Geode community can work on any subtask - This is a long running, and a massive feature development which is manipulating core code on Apache Geode. Hence all work is pushed to the feature branch to keep develop isolated from a regression introduced in PR clear work. - We have previously used release flags for Lucene work which we found to be inefficient and unnecessary extra work. We vote that PR clear feature branch be maintained in the Geode Repository as this is a long running, massive effort involving everyone from the community. When the PR clear tasks are completed, the branch will be rigorously tested and then squash merged into develop and the feature branch will be deleted. Regards Naba -Original Message- From: Jacob Barrett Sent: Tuesday, June 2, 2020 3:43 PM To: dev@geode.apache.org Subject: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches I know this has been brought up multiple times without resolution. I want us resolve to ban the use of Geode repository for work in progress, feature branches, or any other branches that are not release or support branches. There is no reason given the nature of GitHub why you can’t fork the repository to contribute. * Work done on these branches results in the ASF bots updating the associated JIRAs and email blasting all of us with your work. * People don’t clean up these branches, which leads to a mess of branches on everyones clones and in the UI. * All your intermediate commits get synced to the repo, which bloats the repo for everyone else. Even your commits you rebase over and force push are left in the repo. When you delete your branch these commits are not removed. There is no way for us to prune unreferenced commits. Nobody else needs your commits outside of what was merged to a production branch. If anyone has a use case for working directly from Geode repo that can’t work from a fork please post it here so we can resolve. Thanks, Jake
RE: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
- We are maintaining feature/GEODE-7665 which is the feature branch for PR clear work on which multiple developers are working on. - We are maintaining this in Geode repository. - All sub-tasks of GEODE-7665 are merged into this feature branch. - Anyone in the Geode community can work on any subtask - This is a long running, and a massive feature development which is manipulating core code on Apache Geode. Hence all work is pushed to the feature branch to keep develop isolated from a regression introduced in PR clear work. - We have previously used release flags for Lucene work which we found to be inefficient and unnecessary extra work. We vote that PR clear feature branch be maintained in the Geode Repository as this is a long running, massive effort involving everyone from the community. When the PR clear tasks are completed, the branch will be rigorously tested and then squash merged into develop and the feature branch will be deleted. Regards Naba -Original Message- From: Jacob Barrett Sent: Tuesday, June 2, 2020 3:43 PM To: dev@geode.apache.org Subject: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches I know this has been brought up multiple times without resolution. I want us resolve to ban the use of Geode repository for work in progress, feature branches, or any other branches that are not release or support branches. There is no reason given the nature of GitHub why you can’t fork the repository to contribute. * Work done on these branches results in the ASF bots updating the associated JIRAs and email blasting all of us with your work. * People don’t clean up these branches, which leads to a mess of branches on everyones clones and in the UI. * All your intermediate commits get synced to the repo, which bloats the repo for everyone else. Even your commits you rebase over and force push are left in the repo. When you delete your branch these commits are not removed. There is no way for us to prune unreferenced commits. Nobody else needs your commits outside of what was merged to a production branch. If anyone has a use case for working directly from Geode repo that can’t work from a fork please post it here so we can resolve. Thanks, Jake
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
+1 to avoiding clutter by not using feature branches on the Geode repo. Sharing your own repo, as Kirk suggests, also works better when collaborating with folks who aren't committers. On Tue, Jun 2, 2020 at 4:16 PM Kirk Lund wrote: > I prefer to share a fork among multiple developers instead of using the > Apache Geode repository. > > On Tue, Jun 2, 2020 at 3:42 PM Jacob Barrett wrote: > > > I know this has been brought up multiple times without resolution. I want > > us resolve to ban the use of Geode repository for work in progress, > feature > > branches, or any other branches that are not release or support branches. > > There is no reason given the nature of GitHub why you can’t fork the > > repository to contribute. > > > > * Work done on these branches results in the ASF bots updating the > > associated JIRAs and email blasting all of us with your work. > > > > * People don’t clean up these branches, which leads to a mess of branches > > on everyones clones and in the UI. > > > > * All your intermediate commits get synced to the repo, which bloats the > > repo for everyone else. Even your commits you rebase over and force push > > are left in the repo. When you delete your branch these commits are not > > removed. There is no way for us to prune unreferenced commits. Nobody > else > > needs your commits outside of what was merged to a production branch. > > > > If anyone has a use case for working directly from Geode repo that can’t > > work from a fork please post it here so we can resolve. > > > > Thanks, > > Jake > > > > > > > > >
Re: [DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
I prefer to share a fork among multiple developers instead of using the Apache Geode repository. On Tue, Jun 2, 2020 at 3:42 PM Jacob Barrett wrote: > I know this has been brought up multiple times without resolution. I want > us resolve to ban the use of Geode repository for work in progress, feature > branches, or any other branches that are not release or support branches. > There is no reason given the nature of GitHub why you can’t fork the > repository to contribute. > > * Work done on these branches results in the ASF bots updating the > associated JIRAs and email blasting all of us with your work. > > * People don’t clean up these branches, which leads to a mess of branches > on everyones clones and in the UI. > > * All your intermediate commits get synced to the repo, which bloats the > repo for everyone else. Even your commits you rebase over and force push > are left in the repo. When you delete your branch these commits are not > removed. There is no way for us to prune unreferenced commits. Nobody else > needs your commits outside of what was merged to a production branch. > > If anyone has a use case for working directly from Geode repo that can’t > work from a fork please post it here so we can resolve. > > Thanks, > Jake > > > >
[DISCUSSION] Stop using the Geode Repository for Feature/WIP Branches
I know this has been brought up multiple times without resolution. I want us resolve to ban the use of Geode repository for work in progress, feature branches, or any other branches that are not release or support branches. There is no reason given the nature of GitHub why you can’t fork the repository to contribute. * Work done on these branches results in the ASF bots updating the associated JIRAs and email blasting all of us with your work. * People don’t clean up these branches, which leads to a mess of branches on everyones clones and in the UI. * All your intermediate commits get synced to the repo, which bloats the repo for everyone else. Even your commits you rebase over and force push are left in the repo. When you delete your branch these commits are not removed. There is no way for us to prune unreferenced commits. Nobody else needs your commits outside of what was merged to a production branch. If anyone has a use case for working directly from Geode repo that can’t work from a fork please post it here so we can resolve. Thanks, Jake