Remove OR rename https://git.launchpad.net/clash

Asked by Martijn Bastiaan on 2018-08-31

I want this repository:

https://code.launchpad.net/~martijn-qbay/clash/+git/clash-cosim

to actually be called 'clash-cosim'. This is necessary due to submodules. No matter what I do, the git repository always ends up being called:

https://git.launchpad.net/clash

I think I might have triggered some bug somewhere, but I don't know. As a workaround, I would like the whole project (clash) to be deleted, so I can recreate it with an empty repository as default.

Question information

Language:
English Edit question
Status:
Solved
For:
Launchpad itself Edit question
Assignee:
No assignee Edit question
Solved by:
Martijn Bastiaan
Solved:
2018-08-31
Last query:
2018-08-31
Last reply:
2018-08-31
Colin Watson (cjwatson) said : #1

https://git.launchpad.net/clash is simply an alias for the default repository for the 'clash' project. If you want /~martijn-qbay/clash/+git/clash-cosim to remain in the 'clash' project but not to be its default repository, then you can do that yourself by going to https://code.launchpad.net/clash/+configure-code and emptying the "Git repository" box under "Link to a Git repository already on Launchpad".

It's usually a good idea for a project to have *some* default repository, but perhaps this is an edge case where that isn't appropriate - up to you.

Hi, thanks for your answer! It did not quite solve my problem, but that's not your fault. It did solve my direct issue.

The thing is: I'm trying to build a PPA for clash-compiler: https://github.com/clash-lang/clash-compiler. The repository is organized with submodules. I had hoped that once I would have imported all repositories, I could have simply run:

git clone https://git.launchpad.net/~martijn-qbay/clash/+git/clash-compiler --recursive

unfortunately, the other repositories resolve to be of the form:

https://git.launchpad.net/~martijn-qbay/clash/+git/clash-cosim.git

which is __slightly__ different from what Launchpad uses, which is:

https://git.launchpad.net/~martijn-qbay/clash/+git/clash-cosim

I'll have to use some manual patching, unless there is known workaround or solution? I can't add ".git" to the repository name unfortunately. I'll mark this as "still need an answer", but if you can't help me any further feel free to just close this issue.

Colin Watson (cjwatson) said : #3

At the moment we don't have a way to deal with that. We do intentionally blacklist ".git" at the end of repository names, which if I remember correctly was partly to avoid confusion and partly with the intention of allowing it to be added as an alias form later on. If you'd like us to pursue the alias option, feel free to file a bug report (since it's likely to be forgotten otherwise).

Colin Watson (cjwatson) said : #4

I think it would also be possible for upstream to remove the ".git" suffix from their .gitmodules file, incidentally. GitHub is usually happy with or without the ".git" suffix, except in a few special cases which I don't think apply here.

Ah, thanks, very cool. I'll investigate whether we can safely remove the ".git" suffix from upstream. Would you happen to have a convenient link to the special cases you're referring to?

If it doesn't work out, I'll be back to create a bug report, but for now I consider my question answered and my issue solved. Thanks!

Colin Watson (cjwatson) said : #6

I don't have a link, I'm afraid, since this is just from empirical observation rather than official documentation. Our observation is that when you omit the suffix GitHub does user-agent sniffing to determine whether to serve its web UI or the HTTP-based git protocol.

The case where we've run into this is when trying to clone a repository using a non-git client; this means that for code imports from GitHub to Bazaar branches in Launchpad we have to make sure that the URL has a ".git" suffix. As far as I know, though, omitting the suffix is always fine when you're using git itself.