qingpingguo / git-repo

Automatically exported from code.google.com/p/git-repo
Apache License 2.0
0 stars 0 forks source link

Project fetch url doesn't get '.git' appended to it if "remote" url is ssh #106

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Affected Version: 1.7.5.4
Environment: Ubuntu 11.10

What steps will reproduce the problem?
1. Setup a repo manifest.xml with the following
<remote name="myserver" fetch="ssh://git@myserver" />
<project path="myprojects/project1" name ="myprojects/project1" 
revision="master" remote="myserver" />

2. Init the repo...
repo init -u file://path/to/my/manifests.git

3. Sync the source code
repo sync

What is the expected output? What do you see instead?
I expect that "project1" will be cloned from 
"ssh://git@myserver/myprojects/project1", and I will see the source code in the 
directory "myprojects/project1".

Instead, the server fails to find the project, and aborts:

== Gitorious: =================
Access denied or bad command
===============================

fatal: The remote end hung up unexpectedly

== Gitorious: ==================
Access denied or bad command
================================

fatal: The remote end hung up unexpectedly
error: Cannot fetch myprojects/project1
error: Exited sync due to fetch errors

Looking at the created repository for myprojects/project1, the remote 
fetch/push url's are missing the '.git'.
git remote -v
myserver ssh://git@myserver/myprojects/project1 (fetch)
myserver ssh://git@myserver/myprojects/project1 (push)

Please provide any additional information below.

I found I can work around the problem by specifying a project name with ".git" 
appended.  eg:
<project name="myprojects/project1.git" ...

However, when creating a mirror, this results in the creation of a repository 
named "myprojects/project1.git.git"

Original issue reported on code.google.com by mr.craig...@gmail.com on 30 Jan 2012 at 3:43