| |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| -> 开发工具 -> Git详细仓库创建、代码更新、代码提交、分支、冲突等完整版(Gitee、Github、GitLab对比) -> 正文阅读 |
|
|
[开发工具]Git详细仓库创建、代码更新、代码提交、分支、冲突等完整版(Gitee、Github、GitLab对比) |
一、区别
二、git名词术语解释
三、git图解稍微瞄一眼这图,几乎git常用的命令都基于这个图!!! 为了便于理解,什么时候用clone、add、commit、pull、push、reset、fetch、diff 这个图就有思路 |
| svn命令 | git命令 |
![]() | ![]() |

仓库和项目先后创建都没关系,都可以相互关联上

?
成功后,仓库信息如下:

仓库和项目先后创建都没关系,都可以相互关联上

?Windows安装方式有两种:
①手动安装,官网下载对应的版本,执行安装
②【社区维护】的?Chocolatey 自动安装
?官方地址:
Git - Downloading Packagehttps://git-scm.com/download/win
MacOS安装方式也有两种:
①命令行开发者工具(Xcode Command Line Tools)在Terminal里首次运行git命令即可。
②【官方维护】的macOS Git 安装
官方地址:
Git - Downloading Packagehttps://git-scm.com/download/mac
本文以Windows安装git为例

?安装到底,验证成功如下图:

gitee首页→代码 →? ···? → 功能设置 → 基础信息
或者:
gitee首页→代码 →? 仓库 → 任意一个仓库 → 概览

?
如demo-vue-master
?进目录下右击,如下图:

?第一次需全局配置,第二次就不需要这一步(毕竟我这用户都登录了git)
git config --global user.name "Gitee账号的姓名"
git config --global user.email "Gitee账号的邮箱"
初始化
git init
如下图:如果没有说明是.开头的文件被操作系统隐藏了,可以用ls -ah命令就可以看到

?测试下新建测试文件,并提交gitee仓库如下:
touch README.md
题外话:这个命令为啥没有git 呢,因为是linux命令的创建文件(好歹git是Linux开发用于管理Linux系统开源代码管理版本的初衷,linux用了2周开发了git,完善至今)so,git工具支持linux的命令。最后附图《linux命令附图》
效果如下图:

把README.md提交至暂存区
git add README.md
git commit -m "任意备注,不写也行,必须得引号 这句才把暂存的版本提交到远程gitee创的仓库"
git remote add origin https://gitee.com/gitee自动生成的名称/repositoryname.git #本地关联远程仓库,#后的不要写
git push -u origin master #推送到默认分支master,可新加分支
结合“git、svn图解”git add 只是到暂存区(表示加入版块控制了,但还没提交到仓库)
?需要git commit -m ""
因为是add 和 commit 分两步,也可以这样用:
git add file1.htm
git add file2.htm file3.htm
git commit -m '提交了三个文件'
本地操作如下图:

验证gitee仓库有没文件:

gitee首页→右侧?
→ 添加人员? (这个是先加人员)
gitee首页→代码 →? ···? → 仓库列表 功能设置 → 成员管理(选择上面加入的人员,加入到这个项目的仓库代码同步工作)
这个会保存在
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"
查看git配置
git config --list
git config 有比较多的属性,如颜色配置、忽略文件设置、强制添加被忽略文件、添加例外规则、全局配置 --global,用户配置等
第一次拉取:
git init #第一次用初始化,后续不用
git clone 仓库地址 #第一次要这个
git pull 仓库地址 master #指定仓库的哪一个分支,默认master
或者用第一次拉取:
git init #第一次用初始化,后续不用
git remote add origin https://....
git pull origin master #此处拉取得是master分支的代码
很多帖子用clone,原理是 首次用git 需登录、 初始化(init)、用git把本地仓库连接远程仓库、然后拉代码或提交代码的操作
后面的每次拉取就是:
git pull
git add 文件名 #若添加当前目录的全部文件 git add .
git commit -m "备注"

git log #这个如果很多条,看这累,可以加参数 --pretty=oneline

git diff 文件名

git reset --hard HEAD^ #HEAD当前版本 上一个版本HEAD^ 上上个版本 HEAD^^ 上1000个版本 HEAD~1000
git fetch --all #拉到本地仓库
git reset --hard origin/master #本地仓库拉到本地
git pull #拉
分支特性,分支的创建和切换瞬间完成。是git在各版本控制工具脱颖而出。
分支的创建和合并,只是主分支master和其他分支指针变化,这个就是和引用数据类型类似的概念,没有创建销毁再创建的弯弯绕绕,就是指向不同就达到效果了。
场景:
①单人开发或者多人开发某些功能,使用分支,用完即删,安全便捷。创建分支开发和使用master开发效果是一样的,git建议使用创建分支开发,更安全。
②修bug,如开发这A开发的分支是develop,要改个bug,手头上的功能做了一半,临时紧急要修个bug,需要等手头上功能做完或者隐藏已做的功能,才能把bug改了提交develop的工作(svn就有这毛病)。
毕竟:master是稳定的,用于最终发布版本的,正常不能在这个上面干活(不正常使用的才在这里直接干活 O(∩_∩)O哈哈~)
8.1.1创建分支
git branch develop #开发分支名:develop
8.1.2切换分支
git checkout develop #这个是覆盖本地 切换,见头部《git名词术语解释》中介绍
!!!覆盖本地修改,如果是开发一半的功能,不能用checkout,而是用switch切换分支
以上创建切换可合并如下:(这里新建的肯定还没代码,用checkout)
git checkout -b develop # -b 表示创建branch 分支名称为develop,checkout检出
效果图如下:*为当前分支

①首先看下
在develop分支工作目录 新建提交了一个文件,版本库是有了新记录

?②切回master分支查看,git checkout master

?合并分支命令:
git merge develop #把代码成果develop 合并到当前master分支中
如下图:

8.2中,develop分支成果已拿到master,develop可以删除
删除分支命令:
git branch -d develop
强制删除分支:(未合并,用这个)
git branch -D develop
效果如下,分支只剩下master了

完整步骤:
①当前开发一半的功能在develop分支上
②修临时紧急bug,那需要把develop一半的功能隐藏(git?stash)
③切换需要修复的分支,如master (git check master)
④创建bug分支,同分支创建,修改某文件后git add、git commit
⑤删除bug分支 git?
⑥切回develop继续做功能 git switch develop(这里不用checkout 切换,不然一半的功能就丢了)
一周可能会不定期开发几个新的小功能,又不想把分支搞乱,可以用这个分支
完整步骤:
①创建并切换分支?git switch -c feature1
②提交 分分钟写好了demo.txt,git add?demo.txt 、git commit -m ‘搞定了’
③切回develop,git switch develop
④合并
⑤删除分支
开发者A和开发者B同时修改同一个文件,同一个行代码分别提交,合并基本会冲突

合并如下图:?

?本地打开文件/或者git工具用linux命令打开文件/瞅瞅:

?
冲突解决 !(不发布也行)
支持在git工具中使用linux命令

|
|
|
|
| 上一篇文章 下一篇文章 查看所有文章 |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年11日历 | -2025/11/30 11:48:36- |
|
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |