我在GitHub上拖了一個有幾個福克的項目,但忘記了它是哪個福克。


当前回答

alias git-repo="git config --get remote.origin.url | sed -e 's/:/\//g'| sed -e 's/ssh\/\/\///g'| sed -e 's/git@/https:\/\//g'"
alias git-pr="git config --get remote.origin.url | sed -e 's/:/\//g'| sed -e 's/ssh\/\/\///g'| sed -e 's/git@/https:\/\//g' | sed 's/....$//' | sed -ne 's/$/\/pulls &/p'"

在主目录中将此表达式添加到.zshrc 或.bashrc 文件中。

在此之后,您可以使用如

git-repo
git-pr

其他回答

如果你不知道一个分支的上流远程的名称,你可以首先通过检查当前分支的上流分支名称来查看它。

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)

现在应该注意到,这并不一定与源的远程存储库相同,但在许多情况下,这将是足够的。

简短答案:

$ git remote show -n origin

或者,一个纯粹的快速脚本的替代品:

$ git config --get remote.origin.url

一些信息:

你想要起源正确吗? $ git 远程显示起源更好,只显示起源,但需要太长时间(测试在 git 版本 1.8.1.msysgit.1)。

我结束了: $ git 远程显示 -n 起源,似乎是最快的. 与 -n 它不会捕捉远程头(AKA 分支)。 你不需要这种类型的信息,对吗?

http://www.kernel.org/pub//software/scm/git/docs/git-remote.html

您可以在所有 3 个版本中使用 <unk> <unk> <unk> <unk> <unk> <unk> <unk> <unk> <unk> <unk> <unk> <unk> <unk> <unk> <unk> <unk> <unk>

如果你需要纯粹的速度,那么使用:

$ git config --get remote.origin.url

谢谢 @Jefromi 提到这一点。

只需获取远程URL:

git config --get remote.origin.url

如果您需要完整的输出,并且您正在网络上,可以到达原产地的远程雷波:

git remote show origin

当使用 git clone (从 GitHub,或任何源存储器为该材料) 的默认名称为 clone 的来源是“起源”。使用 git 远程显示将显示有关这个远程名称的信息。

C:\Users\jaredpar\VsVim> git remote show origin
* remote origin
  Fetch URL: git@github.com:jaredpar/VsVim.git
  Push  URL: git@github.com:jaredpar/VsVim.git
  HEAD branch: master
  Remote branches:

如果你想在脚本中使用值,你会使用这个答案中列出的第一个命令。

此将打印您的所有远程的Fetch/Push URL:

git remote -v

要总结一下,至少有四种方式:

使用官方 Linux 存储库:

最小信息:

$ git config --get remote.origin.url
https://github.com/torvalds/linux.git

$ git ls-remote --get-url
https://github.com/torvalds/linux.git

更多信息:

$ git remote -v
origin    https://github.com/torvalds/linux.git (fetch)
origin    https://github.com/torvalds/linux.git (push)

更多信息:

$ git remote show origin
* remote origin
  Fetch URL: https://github.com/torvalds/linux.git
  Push  URL: https://github.com/torvalds/linux.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local branch configured for 'git pull':
    master merges with remote master
  Local ref configured for 'git push':
    master pushes to master (up to date)