【git】本地项目推送到github、合并分支的使用

1. github上创建仓库信息

  1. 点击个人头像,选择【你的仓库】

  2. 点击【新增】

  3. 填写仓库信息

2. 本地项目执行的操作

1.生成本地的git管理 (会生成一个.git的文件夹)

shell 复制代码
git init 

2.正常提交到暂存区,并填写提交消息

shell 复制代码
git add .
git commit -m "init"

3.关联远程仓库

shell 复制代码
git remote add origin https://自己的仓库url地址

4.推送到分支

shell 复制代码
git push -u origin master

这个时候可能会报错:
error: failed to push some refs to 'xxxxxxxx'
出现错误的主要原因是github中的README.md文件不在本地代码目录中

命令行中输入:

shell 复制代码
git pull--rebase origin master

之后再输入

shell 复制代码
git push -u origin master

注意:github上默认的分支是main分支,如果想直接推送到main分支上,可以直接推送。

shell 复制代码
git push -u origin main

5.github上查看:刚才推送到master分支下,就切换到master分支下

有本地项目,就说明提交成功了

3. 合并分支

如果在master分支上开发了一段时间,想合并到main分支上,可以按以下步骤进行操作:

master是待合并分支,main是合并后的分支。

1.确保本地代码库是最新的:

shell 复制代码
# 切换到本地的master分支
git checkout master

# 确保master分支与远程origin/master同步
git pull origin master

2.切换到本地的main分支并更新它:

shell 复制代码
# 查看当前仓库是否有该分支
git branch -a
# 或者查看远程分支:
git branch -r
 
# 切换到本地的main分支
git checkout main

# 与远程origin/main同步
git pull origin main

如果 error: pathspec 'main' did not match any file(s) known to git,说明该分支不存在:

shell 复制代码
# 创建并跟踪main分支
git fetch origin main
git checkout -b main origin/main

然后再进行上面的操作。

3.合并master分支到main分支

shell 复制代码
# 在main分支上合并master分支
git merge master

4.解决可能的冲突:合并时可能会出现冲突,需要手动编辑冲突文件,并添加并提交。

这时可能会出现 fatal: refusing to merge unrelated histories
原因 :git无法识别当前分支和你试图合并的master分支之间的共同提交历史。
解决方法:

shell 复制代码
# 强制Git进行合并
git merge --allow-unrelated-histories master

找到冲突文件,并手动修改。

shell 复制代码
# 将文件全部提交到暂存区
git add .

# 添加提交信息
git commit -m "merge master into main"

# 推送到远程仓库的main分支
git push origin main  

这样就已经合并成功了~

相关推荐
计算机魔术师3 小时前
Anthropic CEO突然喊踩刹车,OpenAI罕见力挺:AI这辆车不能只踩油门了
前端
wing983 小时前
从codex转战workbuddy使用一周的感受
前端·人工智能·后端
EatFan3 小时前
Java接入支付宝 JSAPI 支付保姆教程(二):流程讲解与前后端代码讲解
前端·spring boot·后端·微信小程序·小程序·uni-app
梦想平凡4 小时前
百游棋牌源代码开发搭建教程(五):房间创建、座位分配与请求幂等实现
前端·javascript·数据库·源代码管理
IT_陈寒4 小时前
Redis的Set操作居然能把我的服务整挂了?
前端·人工智能·后端
计算机魔术师5 小时前
Suno 发布 v6 音乐模型,推出 v6、v6-wild、v6-mini 三个版本
前端
whyweplay5 小时前
elpis : DSL动态组件学习
前端
用户921080262865 小时前
前端 Vue 专栏 06:异步更新机制、任务队列与 nextTick
前端
99316665 小时前
一个人用 AI 的困局:它从不反对你,所以我让 5 个 AI 开了场圆桌会议
github·deepseek
晴天166 小时前
Chrome DevTools 深度调试指南
前端·chrome·chrome devtools