{"action":"created","issue":{"url":"https://api.github.com/repos/HubTurbo/HubTurbo/issues/806","labels_url":"https://api.github.com/repos/HubTurbo/HubTurbo/issues/806/labels{/name}","comments_url":"https://api.github.com/repos/HubTurbo/HubTurbo/issues/806/comments","events_url":"https://api.github.com/repos/HubTurbo/HubTurbo/issues/806/events","html_url":"https://github.com/HubTurbo/HubTurbo/issues/806","id":96600387,"number":806,"title":"Keeping history clean","user":{"login":"dariusf","id":4328341,"avatar_url":"https://avatars.githubusercontent.com/u/4328341?v=3","gravatar_id":"","url":"https://api.github.com/users/dariusf","html_url":"https://github.com/dariusf","followers_url":"https://api.github.com/users/dariusf/followers","following_url":"https://api.github.com/users/dariusf/following{/other_user}","gists_url":"https://api.github.com/users/dariusf/gists{/gist_id}","starred_url":"https://api.github.com/users/dariusf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dariusf/subscriptions","organizations_url":"https://api.github.com/users/dariusf/orgs","repos_url":"https://api.github.com/users/dariusf/repos","events_url":"https://api.github.com/users/dariusf/events{/privacy}","received_events_url":"https://api.github.com/users/dariusf/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/HubTurbo/HubTurbo/labels/aspect-devops","name":"aspect-devops","color":"FFE6CC"},{"url":"https://api.github.com/repos/HubTurbo/HubTurbo/labels/priority.medium","name":"priority.medium","color":"FF8080"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-07-22T15:50:37Z","updated_at":"2015-07-24T15:36:39Z","closed_at":null,"body":"In the spirit of keeping history tidy, could I suggest a couple of things we can try?\r\n\r\nHere's an example of a not-so-good commit: 582dd80a33103d1ae20d2e939011adf52fab6fb8. It describes what was done but at the wrong level of abstraction.\r\n\r\nCommits are meant to record history for the benefit of maintainers. Someone digging through history likely won't be interested in a local, obvious change like this. That suggests that this change should have been part of a larger one.\r\n\r\nSo:\r\n\r\n- **Squash noisy commits** on feature branches before they are merged. These are things like attempts to appease Travis, linting errors, responses to reviews, formatting changes, etc. Basically, rewrite history within the branch to remove anything irrelevant to a future reader. *Splitting* commits would be ideal but you don't have to do it.\r\n- **Rebase onto master**, instead of merging master into branches. How work progressed with respect to the master branch at the time is not very important.\r\n\r\nIn short, try to make commits as meaningful as possible."},"comment":{"url":"https://api.github.com/repos/HubTurbo/HubTurbo/issues/comments/124560816","html_url":"https://github.com/HubTurbo/HubTurbo/issues/806#issuecomment-124560816","issue_url":"https://api.github.com/repos/HubTurbo/HubTurbo/issues/806","id":124560816,"user":{"login":"damithc","id":1673303,"avatar_url":"https://avatars.githubusercontent.com/u/1673303?v=3","gravatar_id":"","url":"https://api.github.com/users/damithc","html_url":"https://github.com/damithc","followers_url":"https://api.github.com/users/damithc/followers","following_url":"https://api.github.com/users/damithc/following{/other_user}","gists_url":"https://api.github.com/users/damithc/gists{/gist_id}","starred_url":"https://api.github.com/users/damithc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/damithc/subscriptions","organizations_url":"https://api.github.com/users/damithc/orgs","repos_url":"https://api.github.com/users/damithc/repos","events_url":"https://api.github.com/users/damithc/events{/privacy}","received_events_url":"https://api.github.com/users/damithc/received_events","type":"User","site_admin":false},"created_at":"2015-07-24T15:36:39Z","updated_at":"2015-07-24T15:36:39Z","body":"Yes, I think we can definitely be more disciplined in how we create\ncommits. Let's push in that direction gradually. I'll add some instructions\nto the dev guide. We can encourage devs to do,\n* Write better commit messages\n* Commit at logical points\n* Squash if necessary to make the history cleaner\n* Squash post-review commits for ease of reviewing\n* Encouraged to rebase? not sure about this because rebase vs merge debate\ndoesn't have a clear winner.\n"}}