Skip to content

Instantly share code, notes, and snippets.

@matthewberryman
Last active March 23, 2017 13:08
Show Gist options
  • Save matthewberryman/c5ee3814d6aa274021c7991c1f2a54bd to your computer and use it in GitHub Desktop.
Save matthewberryman/c5ee3814d6aa274021c7991c1f2a54bd to your computer and use it in GitHub Desktop.
With git you can have a hierarchical branch naming scheme using forward slashes,
e.g. foo/bar and foo/var but you can't have foo and foo/bar on linux/macOS (not
sure about Windows) because / is the directory delimiter character, so it clones
foo and then that directory already contains stuff in it and it can’t clone foo/bar
there (but foo/bar and foo/var work because in that case foo/ is empty bar the
subdirectories). However if two people separately create foo and foo/bar and push to
the CodeCommit implementation of git, CodeCommit git server accepts both, I presume
because as with most AWS services it uses s3 under the hood, and s3 technically
doesn't have directories as it's a key-value store with no hierachies. So then when
I go to git clone it back to my Mac or a Linux ec2 instance, I get:
fatal: cannot process 'refs/remotes/origin/hotfix' and 'refs/remotes/origin/hotfix/1.0.4' at the same time
@matthewberryman
Copy link
Author

Managed to get one branch for now using --single-branch and -b command line options, arranged for the offending branch to go, and advised AWS of this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment