Git Push17 Mar 2025 | 5 分钟阅读 push 术语是指将本地仓库内容上传到远程仓库。Push 行为是将提交从您的本地仓库转移到远程仓库。 Push 能够覆盖更改;在进行 push 时应小心。 ![]() 此外,我们可以说 push 会使用本地引用更新远程引用。每次您 push 到仓库时,它都会使用您所做的一些有趣的更改进行更新。如果我们没有指定仓库的位置,它将 push 到 origin master 的默认位置。 “git push”命令用于 push 到仓库。 push 命令可以被认为是本地仓库和远程仓库之间转移提交的工具。基本语法如下所示 Push 命令支持许多附加选项。一些选项如下所示,位于 push 标签下。 Git Push 标签<repository>: 仓库是 push 操作的目标。它可以是 URL 或远程仓库的名称。 <refspec>: 它指定要更新源对象的目的 ref。 --all: 单词“all”代表所有分支。它 push 所有分支。 --prune: 它会删除没有本地对应物的远程分支。 意思是,如果您有一个远程分支 say demo,如果此分支在本地不存在,则将被删除。 --mirror: 它用于将仓库镜像到远程。已更新或新创建的本地引用将被 push 到远程端。它可以在远程端强制更新。已删除的引用将从远程端删除。 --dry-run: 模拟运行测试命令。它执行所有操作,除了最初更新仓库之外。 --tags: 它 push 所有本地标签。 --delete: 它会删除指定的分支。 -u: 它创建一个上游跟踪连接。 如果您要首次 push 分支,这将非常有用。 Git Push Origin MasterGit push origin master 是一个特殊的命令行实用程序,它指定远程分支和目录。当您有多个分支和目录时,此命令可帮助您确定您的主分支和仓库。 通常,术语 origin 代表 远程仓库,而 master 被认为是主分支。因此,整个语句“git push origin master”将本地内容 push 到远程位置的 master 分支上。 语法 让我们通过一个例子来理解这个语句。 让我们对我的现有仓库(例如 GitExample2)进行新的提交。我已将图像添加到名为 abc.jpg 的本地仓库中,并提交了更改。请看下图: 在上面的输出中,我将一张图片附加到我的本地仓库中。 git status 命令用于检查仓库的状态。 git status 命令将执行如下 它显示了未跟踪图像 abc.jpg 的状态。现在,添加图像并提交更改,如下所示 该图像已完全在本地仓库中被跟踪。现在,我们可以将其 push 到 origin master 中,如下所示 输出 ![]() 文件 abc.jpg 已成功 push 到 origin master。我们可以在远程位置跟踪它。我已将这些更改 push 到我的 GitHub 帐户。我可以在我的仓库中跟踪它。请看下图 ![]() 在上面的输出中,被 push 的文件 abc.jpg 已上传到我的 GitHub 帐户的 master 分支仓库中。 Git 强制 Pushgit 强制 push 允许您将本地仓库 push 到远程,而无需处理冲突。它的用法如下 或 -f 版本用作 force 的缩写。 远程可以是任何远程位置,例如 GitHub、Subversion 或任何其他 git 服务,而分支是特定的分支名称。例如,我们可以使用 git push origin master -f。 我们也可以省略此命令中的分支。 该命令将执行如下 我们既可以省略 remote 也可以省略 branch。当 remote 和 branch 都被省略时,默认行为由 git config 的 push.default 设置决定。该命令将执行如下 如何安全地强制 Push 仓库强制 push 仓库有几个后果,例如它可能会替换您要保留的工作。 如果远程端有您未期望的新提交,则使用租用选项强制 push 可能导致 push 失败。 如果我们用 git 来说,那么我们可以说,如果远程端包含未跟踪的提交,它将导致失败。它可以执行如下 Git push -v/--verbose-v 代表详细模式。 它以详细模式运行命令。 它 push 仓库并提供了关于对象的详细说明。假设我们已在本地仓库中添加了一个 newfile2.txt,并对其进行了提交。现在,当我们在远程端 push 它时,它将提供比默认 git push 更多的描述。 push verbose 的语法如下所示 语法 或 考虑下面的输出 ![]() 如果我们将上面的输出与默认 git 选项进行比较,我们可以看到 git verbose 提供了描述性输出。 删除远程分支我们可以使用 git push 删除远程分支。它允许从命令行删除远程分支。要删除远程分支,请执行以下命令 语法 输出 ![]() 在上面的输出中,git push origin 命令与 -delete 选项一起使用以删除远程分支。我已从仓库中删除了我的远程分支 edited。请看下图 ![]() 这是我远程仓库的活动分支的列表,在操作命令之前。 ![]() 上图显示了删除命令后的活动分支列表。在这里,您可以看到分支 edited 已从仓库中删除。 下一话题Git 访谈 |
我们请求您订阅我们的新闻通讯以获取最新更新。