在我正在学习的Git教程中, git commit用于存储您所做的更改。

git push什么用?


#1楼

git commit记录您对本地存储库的更改。

git push使用本地更改更新 远程存储库。


#2楼

git commit是提交在本地存储库中暂存的文件。 git push是将本地端的master分支与远程master分支快速合并。 但是合并并不会总是成功。 如果出现拒绝,则必须进行pull才能成功进行git push


#3楼

基本上git commit记录对存储库的更改 ”,而git push与关联对象一起更新远程引用 ”。 因此,第一个用于与本地存储库关联,而第二个则用于与远程存储库进行交互。

这是Oliver Steele的漂亮图片,解释了git模型和命令:

Git数据传输命令

GitReady.com上了解有关git pushgit pull更多信息(我首先提到的文章)


#4楼

git push用于将您在本地存储库中所做的提交添加到远程提交-与git pull一起使用,它允许人们进行协作。


#5楼

commit :将更改添加到本地存储库

push :将最后的提交传输到远程服务器


#6楼

由于git是一个分布式版本控制系统,因此区别在于commit会将更改提交到本地存储库,而push会将更改推到远程存储库。


#7楼

好吧,基本上git commit会将您的更改放入本地存储库,而git push将您的更改发送到远程位置。


#8楼

好吧,基本上git commit会将您的更改放入本地存储库,而git push将您的更改发送到远程位置。 由于git是一个分布式版本控制系统,因此区别在于commit会将更改提交到本地存储库,而push会将更改推到远程存储库

Google Google

http://gitref.org/basic/此链接也将非常有用

https://git-scm.com/docs/git-commit


#9楼

提交快照| 变更集| 历史记录| 版本| 存储库的“另存为” 。 Git仓库= 提交系列(树)。

本地存储库:计算机上的存储库。

远程存储库:服务器上的存储库( Github )。

git commit :向本地存储库追加一个新的提交 (最后一次提交 + 分阶段的修改)。 (所有提交都存储在/.git

git pushgit pull :将本地存储库与其关联的远程存储库同步。 push -应用来自本地更改为远程pull -从远程应用更改到本地


#10楼

一个非常粗略的类比:如果我们将git commit与保存已编辑的文件进行比较,则git push将把该文件复制到另一个位置。

请不要在这种情况下使用此类比喻-提交和推送与保存已编辑文件并复制它完全不同。 就是说,它应该仅出于比较目的。


#11楼

只想添加以下几点:

除非您提交,否则Yon无法推送,因为我们使用git push将在本地分支上所做的提交git push送到远程存储库。

git push命令采用两个参数:

远程名称,例如origin分支名称,例如master

例如:

git push  <REMOTENAME> <BRANCHNAME> 
git push  origin       master

#12楼

用外行术语来说, git commit是在git push之前git push顺序运行它们以将文件成功git到github的步骤。


#13楼

git commit只不过是正式保存更改,对于提交的每条提交消息,一旦完成提交,我们便可以将其推送到远程以全局查看更改

这意味着我们可以在推送到远程之前进行多次提交(我们可以看到发生的提交列表和消息)。git使用提交ID(40位代码)保存每个提交

并且仅当我想查看远程更改时才使用git push(之后,我将检查我的代码是否在jenkins中有效)


#14楼

如果您想在Github上的存储库中维护日志文件,则更容易理解git命令addcommit的用法。 对我而言,典型项目的日志文件可能如下所示:

---------------- Day 1 --------------------
Message: Completed Task A
Index of files changed: File1, File2

Message: Completed Task B
Index of files changed: File2, File3
-------------------------------------------

---------------- Day 2 --------------------
Message: Corrected typos
Index of files changed: File3, File1
-------------------------------------------
...
...
...and so on

我通常以git pull请求开始我的一天,以git push请求结束一天。 因此,一天记录中的所有内容都与它们之间发生的情况相对应。 在每一天中,我要完成一个或多个逻辑任务 ,这些任务需要更改一些文件。 在该任务期间编辑的文件在索引中列出。

这些子任务(此处为任务A和任务B)中的每一个都是单独的提交。 git add命令将文件添加到“文件更改索引”列表中。 此过程也称为暂存,实际上记录更改的文件和执行的更改。 git commit命令记录/完成更改和相应的索引列表以及自定义消息,可用于以后的参考。

请记住,您仍然只更改存储库的本地副本,而不更改Github上的副本。 之后,只有当您执行git push ,所有这些记录的更改以及每次提交的索引文件才会记录在主存储库(位于Github上)上。

例如,要获得该假想日志文件中的第二个条目,我将完成以下操作:

git pull
# Make changes to File3 and File4
git add File3 File4
# Verify changes, run tests etc..
git commit -m 'Corrected typos'
git push

简而言之,使用git addgit commit可以将对主存储库的更改分解为系统的逻辑子更改。 正如其他答案和评论所指出的那样,它们当然还有许多其他用途。 但是,这是最常见的用法之一,也是Git背后的驱动原理,它是一个多级修订控制系统,不同于其他流行的Svn。


#15楼

需要注意的三件事:

1) 工作目录 -----包含我们的代码文件的文件夹

2) 本地存储库 ------这在我们的系统内部。 当我们第一次执行COMMIT命令时,将创建此本地存储库。 在我们的工作目录所在的位置,
Checkit(.git)文件被创建。
之后,一旦我们提交,它将把我们在工作目录文件中所做的更改存储到本地存储库(.git)

3) 远程存储库 -----它位于我们系统的外部,就像在世界上任何地方的服务器上一样。 像github。 当我们执行PUSH命令时,本地存储库中的代码将存储到此远程存储库中


#16楼

推送 :将分支以及必要的提交和对象推送到远程。 如果远程仓库中不存在命名分支,则创建该分支。

提交 :记录对本地存储库所做的更改,提交暂存的快照。 它跟踪每次提交之间所做的更改。

提交更改时,会将更改保存为本地存储库中的单个逻辑集。 您可以多次执行此操作而无需推动。 在推送它们之前,它们不会离开您的本地存储库,这意味着远程存储库还没有这些更改集,因此,当其他人从远程存储库中提取时,您的提交也不会被提取。

当您推送时 ,您在本地存储库中所做的所有提交都将被转移到远程存储库,因此,当共享此远程存储库的其他开发人员提取请求时,他们会将您的更改传输到本地存储库。

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐