runoops.com

git fetch 命令

Git 基本操作

git fetch 命令用于从远程获取代码库。

本章节内容我们将以 Github 作为远程仓库来操作,所以阅读本章节前需要先阅读关于 Github 的相关内容:Git 远程仓库(Github)

该命令执行完后需要执行 git merge 远程分支到你所在的分支。

从远端仓库提取数据并尝试合并到当前分支:

git merge

该命令就是在执行 git fetch 之后紧接着执行 git merge 远程分支到你所在的任意分支。

假设你配置好了一个远程仓库,并且你想要提取更新的数据,你可以首先执行:

git fetch [alias]

以上命令告诉 Git 去获取它有你没有的数据,然后你可以执行:

git merge [alias]/[branch]

以上命令将服务器上的任何更新(假设有人这时候推送到服务器了)合并到你的当前分支。

以我的 https://github.com/liqiang88/runoops-git-test.git 为例。

在main 分支上创建一个分支develop:

$ git checkout -b develop
Switched to a new branch 'develop'

在develop 分支中添加index.php文件,如图:

提交并push到远程:

$ git add .

$ git commit -m "add index file"
g[develop 0b2e1ee] add index file
 1 file changed, 3 insertions(+)
 create mode 100644 index.php

$ git push -u origin develop
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 6 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 311 bytes | 311.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
remote:
remote: Create a pull request for 'develop' on GitHub by visiting:
remote:      https://github.com/liqiang88/runoops-git-test/pull/new/develop
remote:
To github.com:liqiang88/runoops-git-test.git
 * [new branch]      develop -> develop
Branch 'develop' set up to track remote branch 'develop' from 'origin'.

切换到main 分支:

$ git checkout main
Switched to branch 'main'
Your branch is up to date with 'origin/main'.

将远程的develop 分支合并到当前分支:

$ git merge origin/develop
Updating 1f65dce..0b2e1ee
Fast-forward
 index.php | 3 +++
 1 file changed, 3 insertions(+)
 create mode 100644 index.php

查看index.php 内容:

$ cat index.php
<?php
echo 'Hello runoops git test';
?>

Git 基本操作