我在GitHub上拖了一個有幾個福克的項目,但忘記了它是哪個福克。
当前回答
如果你不知道一个分支的上流远程的名称,你可以首先通过检查当前分支的上流分支名称来查看它。
git rev-parse --symbolic-full-name --abbrev-ref @{upstream}
这表明,上流的分支是当前分支的来源,这可以被分配,以获得远程名称如下:
git rev-parse --symbolic-full-name --abbrev-ref @{upstream} | cut -d / -f 1
现在拿到它,并将其粘贴到 git ls-remote,你会得到上流的远程的URL,这是当前分支的来源:
git ls-remote --get-url \
$(git rev-parse --symbolic-full-name --abbrev-ref @{upstream} | cut -d / -f 1)
现在应该注意到,这并不一定与源的远程存储库相同,但在许多情况下,这将是足够的。
其他回答
这只提供URL,这对脚本目的有用:
git config --get remote.origin.url
Git URL 将位于 Git 配置文件中,值相当于关键 URL。
对于 Mac 和 Linux,请使用下面的命令:
cd project_dir
cat .git/config | grep url | awk '{print $3}'
在 Windows 中,在任何文本编辑器中打开下面的文件,并找到关键URL的值。
project_dir/.git/config
注意: 即使您离线或远程 Git 服务器已被删除,这也将工作。
要得到答案:
git ls-remote --get-url [REMOTE]
這比閱讀配置更好;引用 git-ls-remote 的男性頁面:
--get-url 将该远程存储库的 URL 扩展,考虑到任何“url.<base>.insteadOf”配置设置(见 git-config(1)),并将其输出而不与远程存储库进行谈话。
正如 @Jefromi 指出的那样,此选项在 v1.7.5 中添加,并且直到 v1.7.12.2 (2012-09 ) 之前没有文档。
我更喜欢这个,因为更容易记住:
git config -l
它将列出所有有用的信息,如:
user.name=Your Name
user.email=your.name@notexisting.com
core.autocrlf=input
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
remote.origin.url=https://github.com/mapstruct/mapstruct-examples
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.master.remote=origin
branch.master.merge=refs/heads/master
只需远程 URL:
git config --get remote.origin.url
要了解有关特定远程的详细信息,请使用
git remote show [remote-name] command
查看远程URL:
git remote show origin
要查看您在哪里放置.git 文件夹:
git config --get remote.origin.url
推荐文章
- Git在不改变提交时间戳的情况下进行改基
- VS 2017 Git本地提交数据库。每次提交时锁定错误
- 如何在过去的一些任意提交之间注入一个提交?
- 从GitHub克隆项目后拉git子模块
- GitHub上的分叉和克隆有什么区别?
- 递归地按模式添加文件
- 我如何使用notepad++(或其他)与msysgit?
- 如何将现有的解决方案从Visual Studio 2013添加到GitHub
- 是否可以在GitHub上搜索特定的文件名?
- Git存储库中的悬垂提交和blob是什么?它们来自哪里?
- 我如何简单地从我最新的git提交创建一个补丁?
- Git显示“警告:永久添加到已知主机列表”
- 我如何检索一个回购的远程git地址?
- 如何列出提交,因为某些提交?
- 如何在不位于存储库的情况下执行Git命令?