I used to be able to fetch projects from Github using SVN externals:
svn:externals > https://github.com/J7mbo/twitter-api-php/tree/develop twitter-api-php
Github had previously announced support for SVN, and this blog posts details the use of Github projects via SVN externals.
This worked just fine previously, but I've noticed recently (the past couple of weeks?) that I can no longer fetch any project from Github: I get a Unable to connect to a repository at URL *** error. Other externals seem to be working as normal. I can't find any documentation that suggests they've dropped or changed this feature. Does anyone know why this is no longer working, or if they've dropped support?
UPDATE:
Running
svn ls https://github.com/J7mbo/twitter-api-php/branches/develop
returns the following error:
svn: E175002: OPTIONS of 'https://github.com/J7mbo/twitter-api-php/branches/develop': SSL handshake failed: SSL error: tlsv1 alert protocol version (https://github.com)
I'm guessing that's where my problem lies: my openssl version is LibreSSl 2.27, but I can't establish which version of TLS it uses, and in any instance I'm struggling to update openssl.
The svn:externals property is evaluated by your local SVN-Client, not by Github. Therefore as long as Github support the SVN-bridge, svn:externals will work.
But your URL seems to be wrong:
> svn ls https://github.com/J7mbo/twitter-api-php/tree/develop
svn: warning: W160013: URL 'https://github.com/J7mbo/twitter-api-php/tree/develop' non-existent in revision 137
svn: E200009: Could not list all targets because some targets don't exist
This URL seems to work:
> svn ls https://github.com/J7mbo/twitter-api-php/branches/develop
.gitignore
.travis.yml
LICENSE.md
README.md
TwitterAPIExchange.php
composer.json
index.php
phpunit.xml
test/
Related
I try to checkout my repository user/bar on GitHub using the cli-version of svn. This fails with error 500.
Note: Similar questions have been asked before, but are either slightly different or have (for my case) unsatisfying answers:
Error Connecting to GitHub from SVN got a different error message
git svn gives 500 internal server error got the same error, but only with git svn clone not with native svn
Subversion Unexpected server error 500 on checkout had exactly the same problem, but it seemed to have been a temporary problem on GitHub
Community Forum describes exactly the same problem, but got no response
GitHub Documentation says: make an empty checkout of the repository,
$ svn co --depth empty https://github.com/user/repo
> Checked out revision 1.
$ cd repo
So I tried to check out my repositories of foo (created months ago) and bar (created recently), and - as a cross check - a non-existing repository baz:
$ svn co --depth empty https://github.com/user/foo
Checked out revision 4949.
$ svn co --depth empty https://github.com/user/bar
svn: E170013: Unable to connect to a repository at URL 'https://github.com/user/bar'
svn: E175002: Unexpected server error 500 'Internal Server Error' on '/user/bar'
$ svn co --depth empty https://github.com/user/baz
Authentication realm: <https://github.com:443> GitHub
Password for 'user': ****************************************
svn: E170013: Unable to connect to a repository at URL 'https://github.com/user/baz'
svn: E160013: '/user/baz' path not found
Findings:
basically it works, otherwise foo would not be fine
bar exists, otherwise the error would would be like baz
A temporary problem seems unlikely (becaus foo works), but to be sure I've waited for a couple of days - no change. Configuration of foo and bar is identical (to the best of my knowledge).
Any more ideas?
More than a week after the original attempt it suddenly works as expected. So if you happen to run into the same problem:
it might affect only selected repositories
the temporary failure might last for quite some time
I'm trying to create a new project in svn using subclipse from STS/Eclipse. It works fine with existing projects, this is just a project for experimentation. When I try to check in the new project, I get this error message
mkdir --parents -m "Initial import." https://utilities.mycompany.com/svn/repo/springMvcTest
URL access forbidden for unknown reason
svn: access to '/svn/repo/!svn/ver/10618/' forbidden
Filesystem has no item
svn: URL 'https://utilities.mycompany.com/svn/repo/test' non-existent in that revision
Any idea how to fix this?
It would seemingly be a problem on the server. I can only guess based on the info available but it is possible the server Apache process that the Subversion server runs in does not have write access to the repository location on the native filesystem of the server.
Im having some difficulties connecting my project in eclipse with my remote repo with EGit.
I have already created a local git repo and now I want to connect it to github, but when I add the URI and use a https protocol I get:
"Internal error; consult Eclipse error log."
And I get this message in the Eclipse error log:
Error validating org.eclipse.egit.ui.internal.components.RepositorySelectionPage
How can I fix this?
What I do is that I go to remotes, right click it and select "Create remote...".
I then change the URI, and I add "https://github.com/Lumberfella/angularApp.git" to the URI input box, and the Host and Repository path auto fills themselves to:
Host: github.com
Repository path: /Lumberfella/angularApp.git
and In the connection section I have https as the Protocol.
When I do this, its already giving me an error at the top of the "Select URI" window saying: "internal error; consult Eclipse error log." which is what I posted above.
Im using EGit version 3.3.1
I tried out you repository, and it seemed that repository is empty. I am not entirely sure about this answer, but I believe, you cannot use the read-only http urls on empty repositories (e.g. they have no branches to pull).
This theory is further supported by the exception trace I have found in the Error log view:
Caused by: org.eclipse.jgit.api.errors.InvalidRemoteException: Invalid remote: test
at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:136)
at org.eclipse.egit.core.op.FetchOperation.run(FetchOperation.java:127)
at org.eclipse.egit.ui.internal.fetch.FetchOperationUI.execute(FetchOperationUI.java:100)
... 64 more
Caused by: org.eclipse.jgit.errors.NoRemoteRepositoryException: test: not found.
at org.eclipse.jgit.transport.TransportLocal$1.open(TransportLocal.java:131)
at org.eclipse.jgit.transport.TransportBundleFile$1.open(TransportBundleFile.java:106)
at org.eclipse.jgit.transport.Transport.open(Transport.java:556)
at org.eclipse.jgit.transport.Transport.open(Transport.java:316)
at org.eclipse.jgit.transport.Transport.open(Transport.java:287)
at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:120)
... 66 more
Basically, the trace says, it cannot get contents from the remote repository.
I was not able to make it work by adding a remote repository by adding the https or ssh inside eclipse in remotes.
But since I was able to make a working local repository, I figured all I needed to do was download the Git Shell and add a new remote repository that way.
For some reason this totally worked and it also automaticly connected the remote repository to eclipse, so Im now able to push directly from eclipse to both the local and the remote repository (or which ever I would like to).
I am using Eclipse GIT (EGIT) to check out from
https://github.com/SpringSource/spring-mvc-showcase
After trying to clone the repository I am receiving the error:
https://github.com/SpringSource/spring-mvc-showcase: https://github.com/SpringSource/spring-mvc-showcase /info/refs?service=git-upload-pack not found
Please, check
Network Connection settings
Network Connection -> SSH2 Eclipse Preference
This error is caused by not having the latest version of git due to updates in the server-side application. I recommend trying to access it through a different protocol (git:// or ftp) if possible. Otherwise, just check for updates in the egit plugin.
Update:
I have learned for a fact that github supports the git protocol. You can use
git://github.com/SpringSource/spring-mvc-showcase.git
as the repository. (If egit asks for a protocol separately from the URL, change it from https to git).
What I have done so far:
Deployed a tomcat6.0 server to c:\www
Downloaded and deployed the Hudson.war in the c:\www\webapps folder
Installed the Github plugin
Created a private repository on Github
On the server, with hudson installed, generated ssh keys.
Environment variable %HOME% is set to c:\Documents and settings[username] (there is a .ssh directory in there with the keys)
Environment variable %HUDSON_HOME% set to c:\www\webapps\hudson
In hudson I have the following configurations:
Github Project: https://github.com/[my organization]/[project name]
Source Code Management: Git
URL of Repository: git#github.com:[my organization]/[project name].git
Branch specifier: **
Repository Browser: (Auto)
When I run a build, and click the console output link I see this --
Started by user anonymous
Checkout:workspace / C:\www\webapps\hudson\jobs\[project name] (git)\workspace - hudson.remoting.LocalChannel#2e8f6d20
Using strategy: Default
Checkout:workspace / C:\www\webapps\hudson\jobs\[project name] (git)\workspace - hudson.remoting.LocalChannel#2e8f6d20
Fetching changes from the remote Git repository
Fetching upstream changes from git#github.com:[organization name]/[project name].git
... at which point it hangs. When I cancel the build, the following are added --
ERROR: Problem fetching from origin / origin - could be unavailable. Continuing anyway
ERROR: (Underlying report) : Error performing command: git.exe fetch -t git#github.com:[organization name]/[project name].git +refs/heads/*:refs/remotes/origin/*
null
ERROR: Could not fetch from any repository
FATAL: Could not fetch from any repository
hudson.plugins.git.GitException: Could not fetch from any repository
at hudson.plugins.git.GitSCM$3.invoke(GitSCM.java:796)
at hudson.plugins.git.GitSCM$3.invoke(GitSCM.java:754)
at hudson.FilePath.act(FilePath.java:756)
at hudson.FilePath.act(FilePath.java:738)
at hudson.plugins.git.GitSCM.gerRevisionToBuild(GitSCM.java:754)
at hudson.plugins.git.GitSCM.checkout(GitSCM.java:540)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1180)
at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:506)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:422)
at hudson.model.Run.run(Run.java:1362)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:145)
First off, since you are starting off with a new CI instance, I would highly recommend that you install the Jenkins fork instead (since it is actively maintained by most of the original developers of Hudson).
Secondly, install the DumpInfo Wrapper plugin and re-run the build again. This plugin prints the system properties and environmental variables in effect during the build and allows you to verify them.
Update:
That plugin should log the system properties and environmental variables, I am surprised you do not see them. As for the passphrase, I suggest you generate a separate private key (from your existing pair) that is not passphrase-protected instead, otherwise you may need to consider the solution offered for: Why git can't remember my passphrase under Windows. I have verified that it works (when I set up my own CI on windows) but I don't feel it is worth the trouble (there are other nuances including installing and running the tomcat instance as the currently logged in user, and NOT as local service, so that pageant will work with it properly), hence I would recommend the first option.
In my case it turned out to be the problem with Git client: I was using v1.6.0 which was triggering
fatal: https://github.com/dmak/jaxb-xew-plugin.git/info/refs download error - The requested URL returned error: 403
error message in Hudson. First it looked like this issue, but strace analysis of git run shown that is was Nginx WebServer (which GitHub is running on) returning 403, not the proxy.
When I've updated to v1.7.3 the problem was gone. So general advise: don't use old clients with GitHub.
P.S. I have tested the cloning both with "Branch Specifier (blank for default): origin/master" in Hudson job configuration and also with blank (default): in both cases Git was able to discover the master branch (origin/master) correctly and used it for cloning.