2 Commits

Author SHA1 Message Date
Burak Yiğit Kaya
73921a6eb5 Fix: respect GIT_SSH env variable when calling Git and support plink (#4302)
**Summary**

Fixes #4167. We use `$GIT_SSH_COMMAND` which overrides `$GIT_SSH`
and causes issues on some systems, where a different `ssh`
executable like `plink` is used. This patch makes our batch-mode
enforcement smarter and more respectful and adds support for `plink`.

**Test Plan**

Unit tests.
2017-09-05 13:29:53 +03:00
Jeremy Judeaux
67dfc7af80 Fix: Refactor branch/tag resolution for git dependencies (#3836)
**Summary**

For git dependencies, the branch/tag resolution does not always work as expected.
Refactor the code to make the resolution algorithm more explicit and follow discussions in #3720.

**Test plan**

New test in `__tests__/util/git-ref-resolver.js`.

Also, benefit from the fact that Travis CI ran the test with an older Git version. I don't know if we have a minimum git version requirement, it seems we currently don't test against any specific version.

**Implementation details**

I refactored `parseRefs` to return the full ref name, so we can differentiate branches and tags.

I use `git ls-remote --symref` to get the default branch name. This works only in recent versions of git (thanks Travis CI for reporting the issue), so I fall back to another algorithm if `--symref` is unavailable.

I tried not to use the variable name `hash`, which is confusing between the git-url hash and the commit hash.
2017-07-26 10:45:42 +01:00