Git 提交与 Git 推送

Azhar Bashir Khan 2022年4月22日
Git 提交与 Git 推送

在本教程中,我们将了解 git commitgit push 之间的区别。

Git 是一个分布式版本控制系统,它跟踪文件的变化,通常在协作开发环境中。

Git 为每个开发人员(即)每台机器提供了作为仓库跟踪的项目目录完整历史记录的本地副本。然后将任何本地更改从本地仓库复制到远程仓库。

此外,远程仓库上的任何更改都会被提取到本地仓库中。

Git 提供命令 git commitgit push 来实现这些目标。

我们现在将通过一个例子详细说明它们之间的区别。

Git 中 git commitgit push 之间的区别

git commitgit push 的基本区别在于 git commit 的范围是本地仓库,而 git push 的范围是远程仓库。

git push 命令总是在执行 git commit 命令之后出现。

当我们执行 git commit 命令时,会捕获项目当前暂存更改的快照。git add 命令执行更改的暂存。

git push 命令将本地仓库内容推送到远程仓库。此命令将提交从本地仓库传输到远程仓库。

假设我们在本地仓库中有一个名为 sample.txt 的文件,我们已对其进行了更新,并且还使用 git add 命令暂存了文件的更改。

现在,我们将检查本地仓库的状态,如下所示。

$ git status
On branch main
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
	modified:   sample.txt

我们可以看到文件 sample.txt 的更改显示为准备好提交。

我们现在将使用 git commit 命令来执行此操作。用消息提交更改的 git commit 命令的语法是 git commit -m <message>

因此,我们将执行以下操作。

$ git commit -m "updated sample.txt"

我们现在将检查本地仓库的 Git 日志,如下所示。

$ git log --oneline
4488776 (HEAD -> main) updated sample.txt
...

我们现在可以在 Git 日志中看到文件 sample.txt 的提交。此提交位于本地仓库索引的 HEAD。新提交是索引的 HEAD 的直接子节点,以及分支即。main 更新为指向它。

我们现在将执行 git push 命令将提交推送到远程仓库。git push 命令的语法是 git push <remote-repository> <branch>

因此,我们将执行以下操作。

$ git push origin main

我们现在已经将提交推送到由别名 origin 和远程分支 main 给出的远程仓库。

我们现在将重新检查 Git 日志,如下所示。

$ git log --oneline
4488776 (HEAD -> main, origin/main) updated sample.txt
...

在 Git 日志中,我们现在可以看到文件 sample.txt 的提交已显示。

提交现在位于本地仓库索引的 HEAD 和远程仓库的远程分支中。

因此,我们详细说明了 Git 中的命令 git commitgit push 之间的区别。

相关文章 - Git Commit

相关文章 - Git Push