Git入门 本地仓库 远端仓库 多分支

Git入门

Git入门

本地git初始化

git仓库初始化

shell 复制代码
mkdir myrepo	# 创建仓库文件夹
cd myrepo/		# 进入目录
git init		# 初始化git仓库 (创建.git文件夹)
git branch -a	# 查看分支 (此时无分支)
touch README.md	# 创建一个文件
git add .		# 将所有文件添加到暂存区
git commit -m "init"	# commit一下
git branch		# 此时查看分支, 默认为master分支

创建远端仓库

github

gitee

此处我创建了两个远端仓库, 方便后面演示(工作中基本都是1个)

指定远端仓库

注意配置ssh公钥, 自行搜索

github ssh: git@github.com:dengwangtao/git_demo.git

gitee ssh: git@gitee.com:TAOTAO_D/git_demo.git

shell 复制代码
# git remote add [起个名, 一般都叫origin] [remote 地址]
git remote add origin git@github.com:dengwangtao/git_demo.git

推送至远端

shell 复制代码
git push origin master:master
# 将master分支推送到origin的master分支(github)

可以看到, 只有github的仓库被推送了


then, 推送到gitee

shell 复制代码
git push origin2 master:master
# 将master分支推送到origin2的master分支 (gitee)

查看远端仓库

多分支

shell 复制代码
# 创建了两个分支 dev 和 feature
git branch dev
git checkout -b feature   # 创建分支并切换到新分支

在feature分支中创建一个main.cpp文件, 并推送到github

查看git log

将feature分支合并至dev分支

shell 复制代码
git checkout dev

git merge feature

git push origin dev:dev

只将dev分支推送到gitee

其他开发者

shell 复制代码
# 克隆仓库, 并放在myrepo2文件夹
git clone git@github.com:dengwangtao/git_demo.git myrepo2

查看分支

有多个远程仓库, 假设目前的需求: 更新dev分支的main.cpp, 输出"Hello Git"

  • 创建 feature_main 分支
  • 修改main.cpp, 验证并测试
  • 合并到dev分支
  • 推送 (解决冲突)

此处基于远端的dev分支创建了feature_main分支, 并更新了main.cpp的代码

并提交到本地, 注意, 此时还没有推送到远端

为了演示解决冲突, 手动在github上修改代码

cpp 复制代码
// 修改前
#include <iostream>

int main() {
	std::cout << "Hello World" << std::endl;
	return 0;
}
cpp 复制代码
// 修改后
#include <iostream>

int main() {
	std::cout << "This is https://github.com/dengwangtao/git_demo/edit/dev/main.cpp" << std::endl;
	return 0;
}

然后, 此时提交代码前, 需要pull (fetch + merge)

合并分支, 发生冲突

查看main.cpp

解决冲突

相关推荐
君穆南2 小时前
基于 NFS 与 Rsync 实现跨服务器 Seafile 数据平滑迁移实战
linux·运维·git
Jurio.3 小时前
本机开发 + 多机执行的极简远端运行工具
linux·git·python·github·远程工作
阿巴~阿巴~4 小时前
Git版本控制完全指南:从入门到实战(简单版)
linux·服务器·git
遇满则缺4 小时前
新手第一次使用gitee全流程(附上常见错误以及解决方法)
git·gitee
Hical_W5 小时前
为 C++ Web 框架设计三层 PMR 内存池:从原理到实战
c++·github
SKILL·NULL6 小时前
如何为GIT设置全局勾子,为每次提交追加信息
git
CoovallyAIHub9 小时前
无人机拍叶片→AI找缺陷:CEA-DETR改进RT-DETR做风电叶片表面缺陷检测,mAP50达89.4%
算法·架构·github
CoovallyAIHub9 小时前
混合训练反而更差?VLM Agent在训练前协调跨数据集标注,文档布局检测F-score从0.860提升至0.883
算法·架构·github
OpenTiny社区9 小时前
多端开发头疼?TinyVue 3.30 一招搞定,AI还帮你写代码!
前端·vue.js·github
峰向AI10 小时前
Vercel 官方出品,你的 24 小时 AI 编程助手
人工智能·github