{"thread":{"id":"7819","subject":"Odd problem in repository","startedAt":"2007-04-24T17:24:02Z","lastAt":"2007-04-24T17:53:07Z","messageCount":7,"participants":["Clark Williams","Shawn O. Pearce","J. Bruce Fields","Jeffrey C. Ollie"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"40351","messageId":"462E3D32.60804@gmail.com","threadId":"7819","inReplyTo":null,"subject":"Odd problem in repository","fromName":"Clark Williams","fromEmail":"clark.williams@gmail.com","sentAt":"2007-04-24T17:24:02Z","receivedAt":"2007-04-24T17:24:02Z","isPatch":false,"sender":{"key":"clark.williams@gmail.com","avatar":null},"body":"-----BEGIN PGP SIGNED MESSAGE-----\nHash: SHA1\n\nHello git-list,\n\nWe're experimenting with using git for the mock source repository on\nfedoraproject.org. The CVS repository was converted over and I\nsuccessfully cloned a repository and went merrily on my way.\n\nOne of my collaborators cloned the repository the other day and found\nthat it didn't have any branches in it. I cloned a temp copy of it and\nfound that the files that normally would be in refs/heads to identify\nthe branches had somehow been moved to the directory\nrefs/remotes/origin. In my local repository (which was cloned\nimmediately after the CVS import), if I list what's in refs/heads, I get\nthis:\n\n$ ls -F refs/heads\nmaster  mock  mock-0-6-branch  mock-0.7  origin\n\non the whacky cloned copy, I get this:\n$ ls -F refs/heads\nmaster\n\nand if I look in refs/remotes/origin:\n$ ls -F refs/remotes/origin\nHEAD  master  mock  mock-0-6-branch  mock-0.7  origin\n\nCan anyone come up with a way that I could have mangled the repository\nwith a push? I mean, I have no idea how that remotes/origin directory\ngot created; I don't even have an interactive login on\ngit.fedoraproject.org.\n\nIf anyone wants to see the repository, you can clone it from:\n\ngit://git.fedoraprojects.org/git/hosted/mock\n\nI'm not sure if it makes sense to try and repair this or just start\nanew. Any advice would be appreciated.\n\nClark\n-----BEGIN PGP SIGNATURE-----\nVersion: GnuPG v1.4.7 (GNU/Linux)\nComment: Using GnuPG with Fedora - http://enigmail.mozdev.org\n\niD4DBQFGLj0xqA4JVb61b9cRAhWYAJ49SDX6EnRxkFkJGjq5TUjhHjP2kwCWOJfK\nobOqRJwU0vOq/aZDsM3glw==\n=XwQr\n-----END PGP SIGNATURE-----\n"},{"id":"40352","messageId":"20070424173048.GA5942@spearce.org","threadId":"7819","inReplyTo":"462E3D32.60804@gmail.com","subject":"Re: Odd problem in repository","fromName":"Shawn O. Pearce","fromEmail":"spearce@spearce.org","sentAt":"2007-04-24T17:30:48Z","receivedAt":"2007-04-24T17:30:48Z","isPatch":false,"sender":{"key":"spearce@spearce.org","avatar":"https://avatars.githubusercontent.com/u/34844?v=4"},"body":"Clark Williams <clark.williams@gmail.com> wrote:\n> One of my collaborators cloned the repository the other day and found\n> that it didn't have any branches in it. I cloned a temp copy of it and\n> found that the files that normally would be in refs/heads to identify\n> the branches had somehow been moved to the directory\n> refs/remotes/origin. In my local repository (which was cloned\n> immediately after the CVS import), if I list what's in refs/heads, I get\n> this:\n> \n> $ ls -F refs/heads\n> master  mock  mock-0-6-branch  mock-0.7  origin\n> \n> on the whacky cloned copy, I get this:\n> $ ls -F refs/heads\n> master\n> \n> and if I look in refs/remotes/origin:\n> $ ls -F refs/remotes/origin\n> HEAD  master  mock  mock-0-6-branch  mock-0.7  origin\n\nThis is a change in Git versions.  Pre Git-1.5.0 we used to put all\nof the branches from the remote system into refs/heads, but now in\n1.5.0 and later we put them in refs/remotes/origin.\n\nNothing screwed up on the central repository, its just the\nnew layout.  refs/heads is reserved for *this* local repository,\nwhile refs/remotes/$name is reserved for the heads of $name remote\nrepository.\n\n-- \nShawn.\n"},{"id":"40353","messageId":"20070424173546.GG18538@fieldses.org","threadId":"7819","inReplyTo":"20070424173048.GA5942@spearce.org","subject":"Re: Odd problem in repository","fromName":"J. Bruce Fields","fromEmail":"bfields@fieldses.org","sentAt":"2007-04-24T17:35:46Z","receivedAt":"2007-04-24T17:35:46Z","isPatch":false,"sender":{"key":"bfields@citi.umich.edu","avatar":null},"body":"On Tue, Apr 24, 2007 at 01:30:48PM -0400, Shawn O. Pearce wrote:\n> This is a change in Git versions.  Pre Git-1.5.0 we used to put all\n> of the branches from the remote system into refs/heads, but now in\n> 1.5.0 and later we put them in refs/remotes/origin.\n> \n> Nothing screwed up on the central repository, its just the\n> new layout.  refs/heads is reserved for *this* local repository,\n> while refs/remotes/$name is reserved for the heads of $name remote\n> repository.\n\nSee also\n\n\thttp://www.kernel.org/pub/software/scm/git/docs/RelNotes-1.5.0.txt\n\n(grep for \"repository layout\") for more details on the change.\n\nThe new system is surprising if you don't expect it, but it's really\nmuch simpler to work with.\n\n--b.\n"},{"id":"40360","messageId":"1177436584.3923.12.camel@lt21223.campus.dmacc.edu","threadId":"7819","inReplyTo":"462E3D32.60804@gmail.com","subject":"Re: Odd problem in repository","fromName":"Jeffrey C. Ollie","fromEmail":"jeff@ocjtech.us","sentAt":"2007-04-24T17:43:04Z","receivedAt":"2007-04-24T17:43:04Z","isPatch":false,"sender":{"key":"jeff@ocjtech.us","avatar":"https://gravatar.com/avatar/95918a1992f277a811c471ae7275f7e4c9d1a2e517ad290bd6aa93b97e8d34f3?d=mp&s=160"},"body":"On Tue, 2007-04-24 at 12:24 -0500, Clark Williams wrote:\n>\n> If anyone wants to see the repository, you can clone it from:\n> \n> git://git.fedoraprojects.org/git/hosted/mock\n\nFYI, this should be:\n\ngit://git.fedoraproject.org/git/hosted/mock\n\n> I'm not sure if it makes sense to try and repair this or just start\n> anew. Any advice would be appreciated.\n\nThe only thing that I would consider would be to redo the conversion but\nthis time specifying an author conversion file with the -A switch.\n\nJeff\n\n"},{"id":"40356","messageId":"462E4200.7080206@gmail.com","threadId":"7819","inReplyTo":"20070424173048.GA5942@spearce.org","subject":"Re: Odd problem in repository","fromName":"Clark Williams","fromEmail":"clark.williams@gmail.com","sentAt":"2007-04-24T17:44:32Z","receivedAt":"2007-04-24T17:44:32Z","isPatch":false,"sender":{"key":"clark.williams@gmail.com","avatar":null},"body":"-----BEGIN PGP SIGNED MESSAGE-----\nHash: SHA1\n\nShawn O. Pearce wrote:\n> Clark Williams <clark.williams@gmail.com> wrote:\n>> One of my collaborators cloned the repository the other day and found\n>> that it didn't have any branches in it. I cloned a temp copy of it and\n>> found that the files that normally would be in refs/heads to identify\n>> the branches had somehow been moved to the directory\n>> refs/remotes/origin. In my local repository (which was cloned\n>> immediately after the CVS import), if I list what's in refs/heads, I get\n>> this:\n>>\n>> $ ls -F refs/heads\n>> master  mock  mock-0-6-branch  mock-0.7  origin\n>>\n>> on the whacky cloned copy, I get this:\n>> $ ls -F refs/heads\n>> master\n>>\n>> and if I look in refs/remotes/origin:\n>> $ ls -F refs/remotes/origin\n>> HEAD  master  mock  mock-0-6-branch  mock-0.7  origin\n> \n> This is a change in Git versions.  Pre Git-1.5.0 we used to put all\n> of the branches from the remote system into refs/heads, but now in\n> 1.5.0 and later we put them in refs/remotes/origin.\n> \n> Nothing screwed up on the central repository, its just the\n> new layout.  refs/heads is reserved for *this* local repository,\n> while refs/remotes/$name is reserved for the heads of $name remote\n> repository.\n> \n\nAh, so I'm not totally inept, just unable to read release notes. Sigh.\n\nBut, I'm still confused. After you clone the central repository, with\nthe new layout, why can't I 'mock checkout -f mock-0-6-branch'? Do I\nneed to further qualify it, or create a local branch from it?\n\nProbably a better question is: what man-page/web-page/mail-thread should\nI read to figure this out?\n\nClark\n\n-----BEGIN PGP SIGNATURE-----\nVersion: GnuPG v1.4.7 (GNU/Linux)\nComment: Using GnuPG with Fedora - http://enigmail.mozdev.org\n\niD8DBQFGLkIAqA4JVb61b9cRAn8VAJ9Q7U4ZxP4Jc6OSyd1rcVufbBOO6wCfdDUn\nPmo7URBzl8PcCSRXu5BqYc0=\n=yl7q\n-----END PGP SIGNATURE-----\n"},{"id":"40357","messageId":"20070424174828.GC5942@spearce.org","threadId":"7819","inReplyTo":"462E4200.7080206@gmail.com","subject":"Re: Odd problem in repository","fromName":"Shawn O. Pearce","fromEmail":"spearce@spearce.org","sentAt":"2007-04-24T17:48:28Z","receivedAt":"2007-04-24T17:48:28Z","isPatch":false,"sender":{"key":"spearce@spearce.org","avatar":"https://avatars.githubusercontent.com/u/34844?v=4"},"body":"Clark Williams <clark.williams@gmail.com> wrote:\n> But, I'm still confused. After you clone the central repository, with\n> the new layout, why can't I 'mock checkout -f mock-0-6-branch'? Do I\n> need to further qualify it, or create a local branch from it?\n\nI don't know what the mock command does...  but if you meant:\n\n\tgit checkout -f mock-0-6-branch\n\nthen you want to add the origin/ prefix to qualify it, as you want\nthe branch from the origin remote.  That should cause your head to\nget detached however:\n\n\tgit checkout -f origin/mock-0-6-branch\n\nat which point you aren't on any branch at all.  So you might\nwant to make your own mock-0-6-branch starting at your origin's\ncurrent version:\n\n\tgit checkout -f -b mock-0-6-branch origin/mock-0-6-branch\n\n-- \nShawn.\n"},{"id":"40358","messageId":"462E4403.4070708@gmail.com","threadId":"7819","inReplyTo":"20070424174828.GC5942@spearce.org","subject":"Re: Odd problem in repository","fromName":"Clark Williams","fromEmail":"clark.williams@gmail.com","sentAt":"2007-04-24T17:53:07Z","receivedAt":"2007-04-24T17:53:07Z","isPatch":false,"sender":{"key":"clark.williams@gmail.com","avatar":null},"body":"-----BEGIN PGP SIGNED MESSAGE-----\nHash: SHA1\n\nShawn O. Pearce wrote:\n> Clark Williams <clark.williams@gmail.com> wrote:\n>> But, I'm still confused. After you clone the central repository, with\n>> the new layout, why can't I 'mock checkout -f mock-0-6-branch'? Do I\n>> need to further qualify it, or create a local branch from it?\n> \n> I don't know what the mock command does...  but if you meant:\n> \n> \tgit checkout -f mock-0-6-branch\n> \n\nHeh, yes that's what I meant.  :)\n\n> then you want to add the origin/ prefix to qualify it, as you want\n> the branch from the origin remote.  That should cause your head to\n> get detached however:\n> \n> \tgit checkout -f origin/mock-0-6-branch\n> \n> at which point you aren't on any branch at all.  So you might\n> want to make your own mock-0-6-branch starting at your origin's\n> current version:\n> \n> \tgit checkout -f -b mock-0-6-branch origin/mock-0-6-branch\n> \n\nAh, I think that's what I was looking for.\n\nThanks,\nClark\n-----BEGIN PGP SIGNATURE-----\nVersion: GnuPG v1.4.7 (GNU/Linux)\nComment: Using GnuPG with Fedora - http://enigmail.mozdev.org\n\niD8DBQFGLkQDqA4JVb61b9cRAt8OAJ9sPWLuiA0n/WKO7EzYH40GhFN0ZgCfY6Mw\nJ7m60FS67Rj4ESgnVNRfjl8=\n=iuic\n-----END PGP SIGNATURE-----\n"}]}