{"action":"opened","issue":{"url":"https://api.github.com/repos/LightTable/LightTable/issues/1924","labels_url":"https://api.github.com/repos/LightTable/LightTable/issues/1924/labels{/name}","comments_url":"https://api.github.com/repos/LightTable/LightTable/issues/1924/comments","events_url":"https://api.github.com/repos/LightTable/LightTable/issues/1924/events","html_url":"https://github.com/LightTable/LightTable/issues/1924","id":90463150,"number":1924,"title":"atom-shell cygwin build breaks when git setting core.autocrlf = false","user":{"login":"dosmoc","id":2172829,"avatar_url":"https://avatars.githubusercontent.com/u/2172829?v=3","gravatar_id":"","url":"https://api.github.com/users/dosmoc","html_url":"https://github.com/dosmoc","followers_url":"https://api.github.com/users/dosmoc/followers","following_url":"https://api.github.com/users/dosmoc/following{/other_user}","gists_url":"https://api.github.com/users/dosmoc/gists{/gist_id}","starred_url":"https://api.github.com/users/dosmoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dosmoc/subscriptions","organizations_url":"https://api.github.com/users/dosmoc/orgs","repos_url":"https://api.github.com/users/dosmoc/repos","events_url":"https://api.github.com/users/dosmoc/events{/privacy}","received_events_url":"https://api.github.com/users/dosmoc/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-06-23T18:51:55Z","updated_at":"2015-06-23T18:51:55Z","closed_at":null,"body":"Following the directions in doc/developer-install.md for build in atom-shell (assuming lein, node, and npm are working) in cygwin breaks when git config --global core.autocrlf is set to the default. Should this setting the value to true be in the build documents or is it generally understood when building with cygwin that it should be so?\r\n\r\nShowing how the build fails:\r\n```\r\n$ git clone https://github.com/LightTable/LightTable.git\r\nCloning into 'LightTable'...\r\nChecking out files: 100% (1527/1527), done.\r\n\r\n$cd LightTable\r\n\r\n$ git checkout atom-shell\r\nBranch atom-shell set up to track remote branch atom-shell from origin.\r\nSwitched to a new branch 'atom-shell'\r\n\r\n$ script/build.sh\r\n: invalid option line 2: set: -\r\nset: usage: set [--abefhkmnptuvxBCHP] [-o option-name] [arg ...]\r\nscript/build.sh: line 3: $'\\r': command not found\r\nscript/build.sh: line 8: $'\\r': command not found\r\nscript/build.sh: line 44: syntax error near unexpected token `$'do\\r''\r\n'cript/build.sh: line 44: `  for plugin in \"${PLUGINS[@]}\" ; do\r\n\r\n```\r\n\r\nThis appears to be because the line endings are converted to Windows compatible CR LF when the cygwin shell only recognizes Unix line endings. The branch builds successfully if git config --global core.autocrlf is set to false like so:\r\n\r\n```\r\ngit config --global core.autocrlf false\r\n```\r\n\r\nAdditionally, it looks like it's possible to explicitly set  line ending behavior for file types using .gitattributes so repo itself can determine what files should receive what type of line ending:\r\n\r\nhttp://adaptivepatchwork.com/2012/03/01/mind-the-end-of-your-line/\r\n\r\n"}}