【Git】Git pull就是知道它和git fetch以及git merge一样,但具体是什么意思?

经常听说git pull相当于执行git fetch和git merge的操作。

然而,由于在每个命令中省略选项和参数的情况下,其行为并不清楚,因此我进行了对这些命令执行的具体操作进行了调查。

$git pull

↓ 相同

$git fetch
$git merge

目录

    1. 获取最新版本的代码

 

    1. 合并代码

 

    1. 带参数的拉取最新代码

 

    常见用法

1. 拉取 git 信息

如果没有指定选项或参数,则会获取存储在远程仓库中名为origin的所有跟踪分支的数据。

换句话说,前提是要注册origin作为远程存储库。

▼远程仓库

//登録されているリモートレポジトリの確認
$ git remote 
origin

如果您想要确认URL,请使用git remote -v进行确认。

远程追踪分支可以通过git branch -a命令进行确认。

$ git branch -a
* master
  remotes/origin/master
  remotes/origin/aaa

如果处于前述状态,执行git fetch会从origin/master和origin/aaa获取提交历史记录。

提交记录的更新不是在执行该命令的分支上,而是在origin/master和origin/aaa上更新。

确认已更新的提交历史

想要查看远程追踪分支的提交历史,请进行以下操作:

只需要执行“$ git log origin/<分支名称>”。

如果加上–online或–graph选项,就可以以更清晰的方式显示出来。

2. 合并 Git

如果没有指定选项或参数,则会合并当前分支的远程跟踪分支。

如果在主分支上执行了git合并操作的话,

$ git merge origin master

与执行进行是相同的。

(This sentence is translated to Chinese and means “It becomes the same as execution.”)

※注意事项
如果您在master以外的另一个分支上(例如分支aaa),则应该将该分支的远程仓库(origin/aaa)的提交历史进行整合,而不是使用master/master。

这里是一个简单的git拉取陷阱。

如果在自己专用的分支上工作,即使执行git pull命令也不会有任何更新。

如果您在不是主分支上工作,并且想要将远程代码库的主分支合并到当前分支,您可以使用git merge。 (Moshi, master yi wai de bu lan zhi shang zuo ye he, li mao li ji de ma su tai de ke mitechiha shi.)

$git pull origin master

↓ 一样的

$git fetch 
$git merge origin master

这个时候。

3. 有参数的git pull

指定了远程仓库和分支的git pull指令会执行什么操作?

$ git pull origin aaa

请将以下内容用中文进行本地化改写,只需要提供一种选项:

$git fetch origin aaa
$git merge origin aaa

使用git fetch命令,从指定的远程代码仓库(origin)的分支(aaa)中获取数据。

用git merge命令将从获取的提交合并到执行命令的分支。

常见的用法

在多人参与的项目中经常使用的方法是,为了保持自己的工作环境处于最新状态,

在自己创建分支并进行工作时,定期获取主分支的更新信息并进行合并。

通过命令来查看

$ git pull origin master

向下

$git fetch origin master
$git merge origin master

正在运行。

以上的内容。

广告
将在 10 秒后关闭
bannerAds