{"action":"closed","issue":{"url":"https://api.github.com/repos/joshsoftware/code-curiosity/issues/6","labels_url":"https://api.github.com/repos/joshsoftware/code-curiosity/issues/6/labels{/name}","comments_url":"https://api.github.com/repos/joshsoftware/code-curiosity/issues/6/comments","events_url":"https://api.github.com/repos/joshsoftware/code-curiosity/issues/6/events","html_url":"https://github.com/joshsoftware/code-curiosity/issues/6","id":111757948,"number":6,"title":"While fetching commits, we should parse all branches and remove duplicates.","user":{"login":"gautamrege","id":61500,"avatar_url":"https://avatars.githubusercontent.com/u/61500?v=3","gravatar_id":"","url":"https://api.github.com/users/gautamrege","html_url":"https://github.com/gautamrege","followers_url":"https://api.github.com/users/gautamrege/followers","following_url":"https://api.github.com/users/gautamrege/following{/other_user}","gists_url":"https://api.github.com/users/gautamrege/gists{/gist_id}","starred_url":"https://api.github.com/users/gautamrege/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gautamrege/subscriptions","organizations_url":"https://api.github.com/users/gautamrege/orgs","repos_url":"https://api.github.com/users/gautamrege/repos","events_url":"https://api.github.com/users/gautamrege/events{/privacy}","received_events_url":"https://api.github.com/users/gautamrege/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":{"login":"kirandc","id":148687,"avatar_url":"https://avatars.githubusercontent.com/u/148687?v=3","gravatar_id":"","url":"https://api.github.com/users/kirandc","html_url":"https://github.com/kirandc","followers_url":"https://api.github.com/users/kirandc/followers","following_url":"https://api.github.com/users/kirandc/following{/other_user}","gists_url":"https://api.github.com/users/kirandc/gists{/gist_id}","starred_url":"https://api.github.com/users/kirandc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kirandc/subscriptions","organizations_url":"https://api.github.com/users/kirandc/orgs","repos_url":"https://api.github.com/users/kirandc/repos","events_url":"https://api.github.com/users/kirandc/events{/privacy}","received_events_url":"https://api.github.com/users/kirandc/received_events","type":"User","site_admin":false},"milestone":null,"comments":2,"created_at":"2015-10-16T04:38:12Z","updated_at":"2015-10-20T10:45:36Z","closed_at":"2015-10-20T10:45:36Z","body":"We currently fetch commits for the team only from master.\r\n* We should fetch commits from all the branches\r\n* Remove duplicates / merges.\r\n\r\nAlternatively, we will have to ask the team to tell us which branch commits to parse but that could have it's own set of problems. \r\n\r\n[From Rishi's email]\r\nIt is ideally suggested while working on open-source projects, you should keep the remote master and your local master copy in sync. So you should not merge your new feature branch into local master. Instead wait for the author to accept your PR and then you can pull from remotes master into local master.\r\n\r\nIf you follow this process, it helps in long term too. Now imagine one member of team alpha (say Rishi), he has done some changes on the local master(instead of new feature branch), and sends a PR. But it got rejected by the main author (Jiren), so now he has a master which has some commits which is not acceptable. So what he can do now(because he do not need those faulty commits):\r\n\r\n1. git reset the commits and then checkout.\r\n2. Delete the repo and re-clone it.\r\n\r\nor it could get worst, if Rishi does not work on filterjs for some months and then he comes back, so Rishi will just pull the remotes master into local master(which also has those unaccepted commits) to get the latest copy. Rishi may not remember that there are few commits which were not acceptable. And now he has a master which is not true copy of remote master and it might screw up his future work.\r\n\r\nI am going to put this in Wiki as guidelines to contribute to Open Source! "}}