{"action":"created","issue":{"url":"https://api.github.com/repos/cksource/mgit2/issues/73","repository_url":"https://api.github.com/repos/cksource/mgit2","labels_url":"https://api.github.com/repos/cksource/mgit2/issues/73/labels{/name}","comments_url":"https://api.github.com/repos/cksource/mgit2/issues/73/comments","events_url":"https://api.github.com/repos/cksource/mgit2/issues/73/events","html_url":"https://github.com/cksource/mgit2/issues/73","id":313303831,"number":73,"title":"Redesign the set of mgit commands","user":{"login":"Reinmar","id":156149,"avatar_url":"https://avatars2.githubusercontent.com/u/156149?v=4","gravatar_id":"","url":"https://api.github.com/users/Reinmar","html_url":"https://github.com/Reinmar","followers_url":"https://api.github.com/users/Reinmar/followers","following_url":"https://api.github.com/users/Reinmar/following{/other_user}","gists_url":"https://api.github.com/users/Reinmar/gists{/gist_id}","starred_url":"https://api.github.com/users/Reinmar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Reinmar/subscriptions","organizations_url":"https://api.github.com/users/Reinmar/orgs","repos_url":"https://api.github.com/users/Reinmar/repos","events_url":"https://api.github.com/users/Reinmar/events{/privacy}","received_events_url":"https://api.github.com/users/Reinmar/received_events","type":"User","site_admin":false},"labels":[{"id":521886272,"url":"https://api.github.com/repos/cksource/mgit2/labels/status:discussion","name":"status:discussion","color":"e6e6e6","default":false},{"id":521886286,"url":"https://api.github.com/repos/cksource/mgit2/labels/type:feature","name":"type:feature","color":"84b6eb","default":false}],"state":"open","locked":false,"assignee":{"login":"pomek","id":2270764,"avatar_url":"https://avatars1.githubusercontent.com/u/2270764?v=4","gravatar_id":"","url":"https://api.github.com/users/pomek","html_url":"https://github.com/pomek","followers_url":"https://api.github.com/users/pomek/followers","following_url":"https://api.github.com/users/pomek/following{/other_user}","gists_url":"https://api.github.com/users/pomek/gists{/gist_id}","starred_url":"https://api.github.com/users/pomek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pomek/subscriptions","organizations_url":"https://api.github.com/users/pomek/orgs","repos_url":"https://api.github.com/users/pomek/repos","events_url":"https://api.github.com/users/pomek/events{/privacy}","received_events_url":"https://api.github.com/users/pomek/received_events","type":"User","site_admin":false},"assignees":[{"login":"pomek","id":2270764,"avatar_url":"https://avatars1.githubusercontent.com/u/2270764?v=4","gravatar_id":"","url":"https://api.github.com/users/pomek","html_url":"https://github.com/pomek","followers_url":"https://api.github.com/users/pomek/followers","following_url":"https://api.github.com/users/pomek/following{/other_user}","gists_url":"https://api.github.com/users/pomek/gists{/gist_id}","starred_url":"https://api.github.com/users/pomek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pomek/subscriptions","organizations_url":"https://api.github.com/users/pomek/orgs","repos_url":"https://api.github.com/users/pomek/repos","events_url":"https://api.github.com/users/pomek/events{/privacy}","received_events_url":"https://api.github.com/users/pomek/received_events","type":"User","site_admin":false}],"milestone":null,"comments":11,"created_at":"2018-04-11T12:33:59Z","updated_at":"2018-04-12T08:44:34Z","closed_at":null,"author_association":"MEMBER","body":"Right now we have a pretty messy situation where we have `mgit bootstrap`, `mgit update`, `mgit co`. The first two are quite similar, but none actually follows `git pull` and `git fetch`. \r\n\r\nThe initial idea was to follow Lerna's naming. But after a time we see that `mgit` should follow `git`'s naming. Ideally, pretty much 1:1.\r\n\r\nSo, it could look like:\r\n\r\n* `mgit pull` – does what `git pull` does + clones missing repos\r\n* `mgit co` – checks out to branches listed in `mgit.json`\r\n* `mgit co <branch>` – checks out all repos to the given branch\r\n* `mgit co -b <branch>` – creates new branches (in all repos in which you have changes?)\r\n* `mgit fetch` – does what `git fetch` dies (+ clones missing repos?)\r\n* `mgit push` – does what `git push` does\r\n* `mgit commit <params...>` – does what `git commit` does\r\n* `mgit save --branches` – saves current configuration of branches to `mgit.json`\r\n* `mgit save --hashes` – saves hashes to `mgit.json`\r\n* `mgit st` – like today\r\n* `mgit diff` – like today\r\n* `mgit exec` – like today\r\n* `mgit merge` – to simplify closing multi-repo PRs\r\n\r\nHowever, what we need to understand is whether these commands do match our workflow. I mean here the old `mgit update` which was actually a sum of the new `mgit co && mgit pull`. Are we ok with the fact that now you'll have to think more about what branches you're on and that `mgit pull` is not all if you were on some completely different setup previously?\r\n"},"comment":{"url":"https://api.github.com/repos/cksource/mgit2/issues/comments/380725989","html_url":"https://github.com/cksource/mgit2/issues/73#issuecomment-380725989","issue_url":"https://api.github.com/repos/cksource/mgit2/issues/73","id":380725989,"user":{"login":"pomek","id":2270764,"avatar_url":"https://avatars1.githubusercontent.com/u/2270764?v=4","gravatar_id":"","url":"https://api.github.com/users/pomek","html_url":"https://github.com/pomek","followers_url":"https://api.github.com/users/pomek/followers","following_url":"https://api.github.com/users/pomek/following{/other_user}","gists_url":"https://api.github.com/users/pomek/gists{/gist_id}","starred_url":"https://api.github.com/users/pomek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pomek/subscriptions","organizations_url":"https://api.github.com/users/pomek/orgs","repos_url":"https://api.github.com/users/pomek/repos","events_url":"https://api.github.com/users/pomek/events{/privacy}","received_events_url":"https://api.github.com/users/pomek/received_events","type":"User","site_admin":false},"created_at":"2018-04-12T08:44:34Z","updated_at":"2018-04-12T08:44:34Z","author_association":"MEMBER","body":"> `mgit exec 'git commit -a -m ...'`\r\n\r\n`git commit -a ...` is a bad command and never should be used because you could commit something that you shouldn't. \r\n\r\nWe should manually go through all repos and add files to commit manually. Then use `mgit commit -- -m \"Message\"` which will execute `git commit -m \"Message\"` in all repos."}}
{"actor":{"display_login":"pomek"}}