From: Christian Halstrick Date: Thu, 02 Oct 2014 13:57:45 GMT Subject: Can I fetch an arbitrary commit by sha1? Message-ID: I always though during fetch I have to specify a refspec and that a sha1 would not be accepted as a ref. Firing some like 'git fetch origin ' should be forbidden. But in fact I see that such a fetch command succeeds if you already have that object in your local repo. My question: is it allowed to fetch sha1's? Shouldn't fetch fail if you try it? See here: > git clone -q https://github.com/chalstrick/dondalfi.git > cd dondalfi > git ls-remote From https://github.com/chalstrick/dondalfi.git ce08dcc41104383f3cca2b95bd41e9054a957f5b HEAD af00f4c39bcc8dc29ed8f59a47066d5993c279e4 refs/foo/b1 ... > git show af00f4c39bcc8dc29ed8f59a47066d5993c279e4 fatal: bad object af00f4c39bcc8dc29ed8f59a47066d5993c279e4 > git fetch origin af00f4c39bcc8dc29ed8f59a47066d5993c279e4 error: no such remote ref af00f4c39bcc8dc29ed8f59a47066d5993c279e4 > git fetch origin refs/foo/b1 remote: Counting objects: 3, done. remote: Compressing objects: 100% (2/2), done. remote: Total 3 (delta 0), reused 0 (delta 0) Unpacking objects: 100% (3/3), done. From https://github.com/chalstrick/dondalfi * branch refs/foo/b1 -> FETCH_HEAD > git fetch origin af00f4c39bcc8dc29ed8f59a47066d5993c279e4 From https://github.com/chalstrick/dondalfi * branch af00f4c39bcc8dc29ed8f59a47066d5993c279e4 -> FETCH_HEAD Ciao Chris