我应该使用哪个Java类来表示Git SSH URL?

vcirk6k6  于 2022-11-20  发布在  Git
关注(0)|答案(3)|浏览(124)

我有一个像git@github.com:boostorg/core.git这样的Git URL,我想在内存中表示它。
我不能使用URLURI,因为我得到格式异常。我想使用比String更结构化的东西。
Java是否由此提供了一个好的类?

xriantvc

xriantvc1#

据我所知,Java中没有类似的东西。你可以编写自己的迷你类来通过String表示它,为了验证URL,你可以使用如下正则表达式:
对于String s,可以说:

s.matches(".+\@*.+:*\.git");

你也可以使用其他正则表达式来提取String的重要部分。
希望这对你有帮助

6jygbczu

6jygbczu2#

创建自己的类并将url拆分为字段怎么样?
大概是这样的:

public class GitUrl{
    private String user;
    private String domain;
    private String path;

    public GitUrl(String user, String domain, String path){
        this.user = user;
        this.domain = domain;
        this.path = path;
    }

    //[...] Getters and Setters

    @Override
    public String toString(){
        return user + "@" + domain +":" + path;
    }
}
d5vmydt9

d5vmydt93#

您可以将其指定为SSH URL。从https://git-scm.com/book/en/v2/Git-on-the-Server-The-Protocols
要通过SSH克隆Git仓库,可以指定ssh:// URL,如下所示:

$ git clone ssh://[user@]server/project.git

此格式的SSH URL是有效的URI,可与java .NET. URI一起使用。

相关问题