Git 新手:如何克隆、修改和推送更改至 GitHub

如果您也是 Git 的新手,想要弄清楚如何克隆、修改和推送更改至 GitHub 可能会让您感到不知所措。在本指南中,我们将逐步介绍如何完成这些操作。

如何在本地修改并推送更改至 GitHub

## 步骤 1:克隆仓库

第一步是将仓库克隆到本地机器。要执行此操作,请运行以下命令:

git clone <repository-url>

## 步骤 2:创建新分支

接下来,为您的更改创建一个新分支。这样可以在不影响主分支的情况下进行更改。要创建新分支,请运行以下命令:

git checkout -b <new-branch-name>

这相当于复制远程仓库到本地的新分支xxx上。

## 步骤 3:进行更改

现在,您可以对代码进行更改。只需修改或添加新代码即可。

## 步骤 4:查看更改

要查看您所做的更改,请运行以下命令:

git diff

这将显示您所做的所有更改的列表。

## 步骤 5:添加更改

一旦您对更改满意,就可以使用以下命令将它们添加到暂存区:

git add .

这将暂存您所做的所有更改。

## 步骤 6:提交更改

在将更改暂存后,请使用描述您所做更改的消息提交它们:

git commit -m "Your commit message here"

## 步骤 7:推送更改

最后,使用以下命令将更改推送到 GitHub:

git push origin <new-branch-name>

这将把本地xxx分支上传至 GitHub 上的 git。

更新分支以反映远程更改

在进行长期项目时,可能会有多个贡献者。这时候,当您在自己的分支上进行修改时,远程主分支可能已经发生了更改。为了更新本地分支以反映远程更改,请按照以下步骤操作:

1. 使用以下命令切换回主分支:
 

git checkout main

2. 使用以下命令从主分支拉取最新的更改:

git pull origin main

3. 使用以下命令切换回您自己的分支:

git checkout <new-branch-name>

4. 使用以下命令将主分支合并到您自己的分支中:
 

git rebase main

这将把主分支移动到您自己的分支中,并根据您的提交来修改内容。

5. 如果出现冲突,请手动选择保留哪段代码。

6. 最后,使用以下命令将更新后的代码推送到远程 GitHub 上:

git push -f origin <new-branch-name>

-f 参数表示强制推送。

7. 原项目主人可以使用 pull request 中的 squash and merge 合并所有不同的 commit。 

        假设您的 GitHub 用户名为 example,您 fork 了一个名为 original-repository 的仓库,并在其中做了一些更改。您提交了三个 commit,每个 commit 都对代码进行了不同的更改。现在,您想要将这些更改合并到原始仓库中。操作流程如下:

graph TD;
A[将更改推送到您 fork 的仓库中] --> B[在 GitHub 上创建新的 pull request];
B --> C[等待原始仓库的维护人员审核您的更改];
C --> D[完成更改并将更改推送到您 fork 的仓库中];
D --> E{是否有冲突};
E -- 有冲突 --> D;
E -- 没有冲突 --> F[使用 "Squash and merge" 选项将所有不同的 commit 合并成一个 commit];
F --> G[提供一个描述性的提交消息];
G --> H[等待合并操作完成];
H --> I[所有不同的 commit 已被合并成一个 commit,并已被推送到原始仓库中];

 远程更新完成后

1. 使用以下命令删除本地分支:

git branch -d <new-branch-name>

2. 使用以下命令从远程拉取最新代码:

git pull origin main

这些就是我们初始使用 Git 的基础知识了!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值