Git 推送



git push 命令用于将本地分支的提交推送到远程仓库的相关分支。

它做什么?

本地同步更改 - 将已提交的更改从本地仓库发送到远程仓库。

协作 - 当在本地提交修改后,可以通过 git push 与协作者共享,这会使用我们的更改更新远程分支。

远程分支更新 - 远程分支使用本地分支的最新提交进行更新。

语法

git push [<remote>] [<branch>]

git push <远程仓库> <分支>

<远程仓库> 是远程仓库的名称。

<分支> 是本地分支的名称。

选项

--force 或 -f

  • 使用 git push -f 命令可以强制将更改推送到远程仓库。

  • 此功能会覆盖通常会阻止使用的限制,例如擦除或覆盖已提交的更改。

  • 应谨慎使用此功能,因为它可以更改仓库历史记录并干扰协作工作。

git push --force origin main

--force-with-lease

  • git push --force-with-lease 命令确保只有在其他人没有向分支推送更改时才强制推送。

  • 如果其他人已更新分支,则您的推送将被拒绝。

git push --force-with-lease origin main

--all

  • 使用 git push --all 命令 - 将所有本地分支与 origin 远程仓库同步。

  • 保持所有本地分支与远程仓库上的相应分支之间的同步。

  • 当我们想要同时将所有本地分支的修改更新到远程仓库时,这很有用。

git push origin --all

--tags

  • 使用 git push --tags 命令,您可以将标签从本地仓库传输到远程 Git 仓库。

  • 确保本地但尚未远程的标签已同步。

  • 启用将所有本地标签发布到远程仓库。

git push origin --tags

--follow-tags

  • 使用 git push --follow-tags 命令,您可以将提交和标签都从本地 Git 仓库推送到远程 Git 仓库。

  • 从推送的提交可以访问的标签将被发送到远程仓库。

git push --follow-tags

--set-upstream 或 -u

  • 在本地分支及其远程仓库等效项之间创建一个跟踪连接。

  • 使 Git 命令(如 git pull)能够自动检索相应的远程分支。

  • 使用 git-config 中的 branch.<name>.merge 参数来配置跟踪关系。

git push origin --set-upstream or -u

--dry-run

  • 使用 git push --dry-run 命令,您可以验证更改推送后会发生什么。

  • 它模拟推送,而不会实际将任何更改推送到远程仓库。

git push --dry-run origin

--mirror

  • 使用 git push --mirror 命令,您可以将所有 refs 从本地仓库推送到远程仓库。

  • 它会创建仓库的精确副本。

git push --mirror origin

--atomic

  • git push --atomic 命令确保所有引用都被推送,或者根本没有被推送。

  • 它确保推送的原子性。

git push --atomic origin main

--no-verify

  • git push --no-verify 命令跳过预推送钩子。

  • 当您不想在 Git 钩子中运行任何检查或测试时,可以使用此命令。

git push --no-verify origin main

--prune

  • git push --prune 命令会删除没有相应本地分支的远程分支。

  • 它在清理过程中很有用。

git push origin --prune

--quiet 或 -q

  • git push --quiet 命令会抑制 push 命令的输出。

  • 当不需要详细输出时,这很有用。

git push origin --quiet

<远程仓库> <分支>:<远程分支>

  • 使用 git push <远程仓库> <分支>:<远程分支> 命令,您可以推送到远程上的不同分支。

git push origin main:production

上述选项与 git push 一起使用时,可以提供更大的灵活性,有助于更好地管理分支、标签、强制推送、安全检查等。

广告