当前位置: 首页 > article >正文

在新电脑上将文件推送到已有的 Git 仓库

初始设置

首先,我克隆了远程仓库到我的新电脑上:

git clone git@gitee.com:Lillyluoluo/principles-of-computer-composition-2024-first-lesson.git

添加文件

我将一个名为 xxx.docx 的文件添加到本地仓库的暂存区,并提交了更改:

git add xxx.docx
git commit -m "Add new files again"

推送到远程仓库

当我尝试推送更改到远程仓库时,遇到了问题:

git push origin master

遇到的问题

我遇到了一个 non-fast-forward 错误,这意味着我的本地分支落后于远程分支。为了解决这个问题,我首先尝试了 git pull 来拉取远程更改:

git pull origin master

但是,这个命令失败了,因为 Git 拒绝合并无关的历史。为了解决这个问题,我使用了 git pull --rebase 来整合远程更改:

git pull --rebase origin master

解决冲突

在变基过程中,我遇到了一些冲突。我解决了这些冲突,并继续了变基操作:

git add <resolved_files>
git rebase --continue

成功推送

在成功变基并解决所有冲突后,我再次尝试推送我的更改,这次成功了:

git push origin master

查看状态

在整个过程中,我频繁使用 git status 来检查当前的状态,确保我正确地进行了每一步:

git status

我也使用 git log 来查看提交历史,确保所有更改都被正确记录:

git log --oneline --graph --decorate --all

结论

通过这个过程,我成功地将文件从新电脑推送到了已有的 Git 仓库。我学到了如何使用 git pull --rebase 来整合远程更改,以及如何解决变基过程中可能遇到的冲突。这是一个宝贵的经验,对于在多台设备上使用 Git 进行版本控制非常有用。

关键命令

  • git clone [repository-url]:克隆远程仓库。
  • git add [file]:添加文件到暂存区。
  • git commit -m "[message]":提交更改到本地仓库。
  • git push origin [branch]:推送更改到远程仓库。
  • git pull origin [branch]:拉取远程仓库的更改。
  • git pull --rebase origin [branch]:使用变基拉取远程更改。
  • git status:查看当前仓库状态。
  • git log --oneline --graph --decorate --all:查看提交历史。

通过记录这个过程,我希望能够帮助自己和其他开发者在遇到类似问题时找到解决方案。

在你尝试在另一台电脑上将文件推送到已有的 Git 仓库的过程中,以下是关键的命令和步骤,以及你如何解决遇到的问题:

### 关键命令

1. **克隆远程仓库**:
   git clone git@gitee.com:Lillyluoluo/principles-of-computer-composition-2024-first-lesson.git

2. **添加文件到暂存区**:
   git add xxx.docx

3. **提交更改到本地仓库**:
   git commit -m "Add new files again"

4. **添加远程仓库**(如果尚未添加):
   git remote add origin git@gitee.com:Lillyluoluo/principles-of-computer-composition-2024-first-lesson.git

5. **推送更改到远程仓库**:
   git push origin master

6. **拉取远程更改**:
   git pull origin master

7. **使用变基整合远程更改**:
   git pull --rebase origin master

### 解决遇到的问题

1. **解决非快进错误**:
   - 通过 `git pull origin master` 拉取远程更改。
   - 当 `git pull` 失败时,使用 `git pull --rebase origin master` 来整合更改。

2. **处理无关历史合并问题**:
   - 使用 `git pull --rebase origin master` 而不是 `git pull` 来避免合并无关的历史。

### 查看状态的命令

1. **查看当前状态**:
   git status

2. **查看提交日志**:
   git log --oneline --graph --decorate --all

3. **查看已跟踪文件**:
   git ls-files


http://www.kler.cn/a/309109.html

相关文章:

  • Redis高可用-主从复制
  • 【go从零单排】Timer、Epoch 时间函数
  • 《情商》提升:增强自我意识,学会与情绪共处
  • react动态路由
  • Qt 获取当前系统中连接的所有USB设备的信息 libudev版
  • 信号量和线程池
  • 【编程基础知识】Java命名规范及最佳实践
  • 孙怡带你深度学习(2)--PyTorch框架认识
  • Unity实战案例全解析:PVZ 植物卡片状态分析
  • 【乐企】基础版接口代码实现
  • Spring Boot校园管理系统:技术选型与架构设计
  • Java | Leetcode Java题解之第405题数字转换为十六进制数
  • TS React 项目中使用TypeScript
  • 【Java】synchronized 基础线程安全
  • git 更新LingDongGui问题解决
  • Reactive 编程-Loom 项目(虚拟线程)
  • 1. YOLOv10: Real-Time End-to-End Object Detection
  • Linux进阶系列(三)——重定向、tee、rsync、xargs
  • Android注册广播
  • 开源免费的NAS系统-TrueNAS CORE搭建和使用(保姆级教程)
  • 基于C++实现(MFC)职工工作量统计系统
  • 机器学习--逻辑回归
  • JavaScript如何判断输入的是空格
  • 常见的反爬虫和应对方法
  • 【SQL】数据库详解-标准SQL语句
  • 协同过滤算法商品推荐系统设计与实现