\r
**%VERSION%** ([go](http://code.google.com/p/gitblit/downloads/detail?name=%GO%)|[war](http://code.google.com/p/gitblit/downloads/detail?name=%WAR%)|[fedclient](http://code.google.com/p/gitblit/downloads/detail?name=%FEDCLIENT%)|[manager](http://code.google.com/p/gitblit/downloads/detail?name=%MANAGER%)) based on [%JGIT%][jgit] *released %BUILDDATE%*\r
\r
+- **security**: fixed security hole when cloning clone-restricted repository with TortoiseGit (issue 28)\r
- improved: updated ui with Twitter's Bootstrap CSS toolkit \r
**New:** *web.loginMessage = gitblit*\r
- improved: repositories list performance by caching repository sizes (issue 27)\r
- fixed: collision on rename for repositories and users\r
- fixed: Gitblit can now browse the Linux kernel repository (issue 25)\r
- fixed: Gitblit now runs on Servlet 3.0 webservers (e.g. Tomcat 7, Jetty 8) (issue 23)\r
-- fixed: Set the RSS content type for Firefox 4 (issue 22)\r
+- fixed: Set the RSS content type of syndication feeds for Firefox 4 (issue 22)\r
- fixed: Null pointer exception if did not set federation strategy (issue 20)\r
- fixed: Gitblit GO allows SSL renegotiation if running on Java 1.6.0_22 or later\r
- added: IUserService.setup(IStoredSettings) for custom user service implementations\r
- ![freeze](cold_16x16.png) Freeze repository (i.e. deny push, make read-only)\r
- Ability to federate with one or more other Gitblit instances\r
- JSON RPC interface\r
+- Java/Swing Gitblit Manager tool \r
- Gitweb inspired web UI\r
-- Administrators may create, edit, rename, or delete repositories through the web UI\r
-- Administrators may create, edit, rename, or delete users through the web UI\r
+- Administrators may create, edit, rename, or delete repositories through the web UI or RPC interface\r
+- Administrators may create, edit, rename, or delete users through the web UI or RPC interface\r
- Repository Owners may edit repositories through the web UI\r
-- Git-notes support\r
+- Git-notes display support\r
- Branch metrics (uses Google Charts)\r
- HEAD and Branch RSS feeds\r
- Blame annotations view\r
],\r
"isFederated": false,\r
"skipSizeCalculation": false,\r
+ "skipSummaryMetrics": false,\r
"size": "102 KB"\r
},\r
"https://localhost/git/libraries/smack.git": {\r
"federationSets": [],\r
"isFederated": false,\r
"skipSizeCalculation": false,\r
+ "skipSummaryMetrics": false,\r
"size": "4.8 MB"\r
}\r
}\r
"libraries"\r
],\r
"isFederated": false,\r
+ "skipSizeCalculation": false,\r
+ "skipSummaryMetrics": false,\r
"size": "102 KB"\r
}\r
</pre>\r
### Current Release\r
**%VERSION%** ([go](http://code.google.com/p/gitblit/downloads/detail?name=%GO%)|[war](http://code.google.com/p/gitblit/downloads/detail?name=%WAR%)|[fedclient](http://code.google.com/p/gitblit/downloads/detail?name=%FEDCLIENT%)|[manager](http://code.google.com/p/gitblit/downloads/detail?name=%MANAGER%)) based on [%JGIT%][jgit] *released %BUILDDATE%*\r
\r
+- **security**: fixed security hole when cloning clone-restricted repository with TortoiseGit (issue 28)\r
- improved: updated ui with Twitter's Bootstrap CSS toolkit \r
**New:** *web.loginMessage = gitblit*\r
- improved: repositories list performance by caching repository sizes (issue 27)\r
- fixed: collision on rename for repositories and users\r
- fixed: Gitblit can now browse the Linux kernel repository (issue 25)\r
- fixed: Gitblit now runs on Servlet 3.0 webservers (e.g. Tomcat 7, Jetty 8) (issue 23)\r
-- fixed: Set the RSS content type for Firefox 4 (issue 22)\r
+- fixed: Set the RSS content type of syndication feeds for Firefox 4 (issue 22)\r
- fixed: Null pointer exception if did not set federation strategy (issue 20)\r
- fixed: Gitblit GO allows SSL renegotiation if running on Java 1.6.0_22 or later\r
- added: IUserService.setup(IStoredSettings) for custom user service implementations\r
import javax.servlet.http.HttpServletRequest;\r
import javax.servlet.http.HttpServletResponse;\r
\r
-import com.gitblit.AuthenticationFilter.AuthenticatedRequest;\r
import com.gitblit.models.RepositoryModel;\r
import com.gitblit.models.UserModel;\r
import com.gitblit.utils.StringUtils;\r
return gitReceivePack;\r
} else if (suffix.contains("?service=git-upload-pack")) {\r
return gitUploadPack;\r
+ } else {\r
+ return gitUploadPack;\r
}\r
}\r
return null;\r
\r
import org.eclipse.jgit.api.CloneCommand;\r
import org.eclipse.jgit.api.Git;\r
+import org.eclipse.jgit.transport.UsernamePasswordCredentialsProvider;\r
import org.eclipse.jgit.util.FileUtils;\r
\r
import com.gitblit.GitBlitServer;\r
}\r
\r
public void testClone() throws Exception {\r
- FileUtils.delete(folder, FileUtils.RECURSIVE);\r
+ if (folder.exists()) {\r
+ FileUtils.delete(folder, FileUtils.RECURSIVE);\r
+ }\r
CloneCommand clone = Git.cloneRepository();\r
clone.setURI(MessageFormat.format("http://localhost:{0,number,#}/git/ticgit.git", port));\r
clone.setDirectory(folder);\r
git.push().setPushAll().call();\r
git.getRepository().close();\r
}\r
+ \r
+ public void testBogusLoginClone() throws Exception {\r
+ File folder = new File(GitBlitSuite.REPOSITORIES, "working/gitblit");\r
+ if (folder.exists()) {\r
+ FileUtils.delete(folder, FileUtils.RECURSIVE);\r
+ }\r
+ CloneCommand clone = Git.cloneRepository();\r
+ clone.setURI(MessageFormat.format("http://localhost:{0,number,#}/git/gitblit.git", port));\r
+ clone.setDirectory(folder);\r
+ clone.setBare(false);\r
+ clone.setCloneAllBranches(true);\r
+ clone.setCredentialsProvider(new UsernamePasswordCredentialsProvider("bogus", "bogus"));\r
+ clone.call();\r
+ }\r
}\r