Git 远程仓库是用于管理与远程服务器交互的配置,方便代码的推送和拉取。以下是详细的参数和操作说明:

参数细节

  • -v, --verbose:运行时显示详细信息。
  • -m <master>:将本地的 HEAD 设置为远程仓库的 <master> 分支。
  • --mirror=fetch:引用不会存储在 refs/remotes 命名空间,而是直接在本地仓库中镜像。
  • --mirror=push:git push 的行为将如同传递了 --mirror 参数。
  • --no-tags:执行 git fetch <name> 时不导入远程仓库的标签。
  • -t <branch>:仅跟踪远程仓库的 <branch> 分支。
  • -f:在设置远程仓库后立即执行 git fetch <name>。
  • --tags:执行 git fetch <name> 时导入远程仓库的所有标签。
  • -a, --auto:将本地的 HEAD 设置为与远程仓库的 HEAD 相同的分支。
  • -d, --delete:从远程仓库中删除所有列出的引用。
  • --add:将 <name> 添加到当前跟踪的分支列表中(set-branches)。
  • --add:不是更改某些 URL,而是添加一个新的 URL(set-url)。
  • --all:推送所有分支。
  • --delete:删除所有匹配 <url> 的 URL(set-url)。
  • --push:操作推送 URL 而不是拉取 URL。
  • -n:不先用 git ls-remote <name> 查询远程仓库的引用,而是使用缓存的信息。
  • --dry-run:报告将要修剪的分支,但不实际执行修剪。
  • --prune:删除没有本地对应分支的远程分支。

45.1 显示远程仓库

要列出所有已配置的远程仓库,使用 git remote 命令。它会显示你配置的每个远程仓库的简短名称(别名)。

$ git remote
premium
premiumPro
origin

要显示更详细的信息,可以使用 --verbose 或 -v 标志。输出将包括远程仓库的 URL 和类型(推送或拉取):

$ git remote -v
premiumPro  https://github.com/user/CatClickerPro.git (fetch)
premiumPro  https://github.com/user/CatClickerPro.git (push)
premium     https://github.com/user/CatClicker.git (fetch)
premium     https://github.com/user/CatClicker.git (push)
origin      https://github.com/ud/starter.git (fetch)
origin      https://github.com/ud/starter.git (push)

45.2 更改 Git 仓库的远程 URL

如果你的远程仓库发生了迁移,可以使用以下命令更改远程 URL:

git remote set-url <name> <url>

它需要两个参数:一个已存在的远程名称(例如 origin 或 upstream)和新的 URL。 检查当前远程 URL:

git remote -v
origin  https://bitbucket.com/develop/myrepo.git (fetch)
origin  https://bitbucket.com/develop/myrepo.git (push)

更改远程 URL:

git remote set-url origin https://localserver/develop/myrepo.git

再次检查远程 URL:

git remote -v
origin  https://localserver/develop/myrepo.git (fetch)
origin  https://localserver/develop/myrepo.git (push)

45.3 删除远程仓库

删除名为 <name> 的远程仓库。所有远程跟踪分支和远程的配置设置都将被移除。

git remote rm <name>

例如,删除名为 dev 的远程仓库:

git remote rm dev

45.4 添加远程仓库

在本地仓库的根目录中使用 git remote add 添加远程仓库。

git remote add <name> <url>

添加远程 Git 仓库 <url> 作为简短名称 <name>。然后可以使用 git fetch <name> 来创建和更新远程跟踪分支 <name>/<branch>。

45.5 显示更多关于远程仓库的信息

你可以通过以下命令查看更多关于远程仓库的信息:

git remote show <remote repository alias>

例如:

git remote show origin

输出结果可能如下:

remote origin
Fetch URL: https://localserver/develop/myrepo.git
Push URL: https://localserver/develop/myrepo.git
HEAD branch: master
Remote branches:
  master    tracked
Local branches configured for 'git pull':
  master    merges with remote master
Local refs configured for 'git push':
  master    pushes to master (up to date)

45.6 重命名远程仓库

将名为 <old> 的远程仓库重命名为 <new>。所有远程跟踪分支和远程的配置设置都将更新。

git remote rename <old> <new>

例如,将远程分支名称 dev 重命名为 dev1:

git remote rename dev dev1