{"action":"created","issue":{"url":"https://api.github.com/repos/dotnet/corefx/issues/6175","repository_url":"https://api.github.com/repos/dotnet/corefx","labels_url":"https://api.github.com/repos/dotnet/corefx/issues/6175/labels{/name}","comments_url":"https://api.github.com/repos/dotnet/corefx/issues/6175/comments","events_url":"https://api.github.com/repos/dotnet/corefx/issues/6175/events","html_url":"https://github.com/dotnet/corefx/pull/6175","id":134405215,"number":6175,"title":"Add sync.sh for dev workflow","user":{"login":"naamunds","id":8249261,"avatar_url":"https://avatars.githubusercontent.com/u/8249261?v=3","gravatar_id":"","url":"https://api.github.com/users/naamunds","html_url":"https://github.com/naamunds","followers_url":"https://api.github.com/users/naamunds/followers","following_url":"https://api.github.com/users/naamunds/following{/other_user}","gists_url":"https://api.github.com/users/naamunds/gists{/gist_id}","starred_url":"https://api.github.com/users/naamunds/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/naamunds/subscriptions","organizations_url":"https://api.github.com/users/naamunds/orgs","repos_url":"https://api.github.com/users/naamunds/repos","events_url":"https://api.github.com/users/naamunds/events{/privacy}","received_events_url":"https://api.github.com/users/naamunds/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/dotnet/corefx/labels/2%20-%20In%20Progress","name":"2 - In Progress","color":"CCCCCC"},{"url":"https://api.github.com/repos/dotnet/corefx/labels/cla-already-signed","name":"cla-already-signed","color":"009800"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":18,"created_at":"2016-02-17T21:29:16Z","updated_at":"2016-02-24T15:33:29Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/dotnet/corefx/pulls/6175","html_url":"https://github.com/dotnet/corefx/pull/6175","diff_url":"https://github.com/dotnet/corefx/pull/6175.diff","patch_url":"https://github.com/dotnet/corefx/pull/6175.patch"},"body":"This script can be used to sync both source code and packages.\r\n\r\ncc: @maririos @weshaggard @ellismg @dagood "},"comment":{"url":"https://api.github.com/repos/dotnet/corefx/issues/comments/188307147","html_url":"https://github.com/dotnet/corefx/pull/6175#issuecomment-188307147","issue_url":"https://api.github.com/repos/dotnet/corefx/issues/6175","id":188307147,"user":{"login":"markwilkie","id":6334885,"avatar_url":"https://avatars.githubusercontent.com/u/6334885?v=3","gravatar_id":"","url":"https://api.github.com/users/markwilkie","html_url":"https://github.com/markwilkie","followers_url":"https://api.github.com/users/markwilkie/followers","following_url":"https://api.github.com/users/markwilkie/following{/other_user}","gists_url":"https://api.github.com/users/markwilkie/gists{/gist_id}","starred_url":"https://api.github.com/users/markwilkie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/markwilkie/subscriptions","organizations_url":"https://api.github.com/users/markwilkie/orgs","repos_url":"https://api.github.com/users/markwilkie/repos","events_url":"https://api.github.com/users/markwilkie/events{/privacy}","received_events_url":"https://api.github.com/users/markwilkie/received_events","type":"User","site_admin":false},"created_at":"2016-02-24T15:33:28Z","updated_at":"2016-02-24T15:33:28Z","body":"Wes and I are in super agreement.  (not exactly sure what that means…grin)  I 2nd the notion that we need to publish our dev workflow docs in the open.\r\n\r\nFrom: Wes Haggard [mailto:notifications@github.com]\r\nSent: Tuesday, February 23, 2016 11:30 PM\r\nTo: dotnet/corefx <corefx@noreply.github.com>\r\nCc: Mark Wilkie <mawilkie@microsoft.com>\r\nSubject: Re: [corefx] Add sync.sh for dev workflow (#6175)\r\n\r\n\r\nAgain the primary purpose Sync.sh/cmd is to gather stuff from the network both packages and source history. Which is why I still think fetch is useful as part of sync and I wouldn't rename this to RestorePackages because it logically fits into the Sync stage which means \"pull all my remote dependencies\". I realize it is slightly different in the semantics of updating the working directory between git and TFS but that mostly due to the nature of the differences in the source control system. I realize that people working in git branches may jump between them often but my expectation is that most git branches are short lived, which means they aren't much different between each other. That means you wouldn't need to necessarily run sync in all cases when you switch branches, but it is something you may need to consider doing it really depends on the changes you are making and jumping around to.\r\n\r\nAs for the request to have one command that does everything I agree that is nice and we probably should have some sort of option for doing that but I still believe there is value in having these steps be distinct so that people can iterate on one of them without needing to run the full chain. Right now build.cmd does a number of things, clean (optional if you pass a parameter), sync (packages), build (product and tests), and test. Those are logically different steps and we should have those steps be unique blocks in our workflow. We then can have something that chains them together for folks that want a consistent set of steps but we should also allow people to just iterate on one of those steps, in particular build and/or test steps.\r\n\r\n@maririos<https://github.com/maririos> it would be good to publish your dev workflow diagram somewhere in our open documentation which outlines the flow we are expecting.\r\n\r\n—\r\nReply to this email directly or view it on GitHub<https://github.com/dotnet/corefx/pull/6175#issuecomment-188121432>.\r\n"}}