关于git使用的图文教程(包括基本使用,处理冲突问题等等)超详细

目录

用户签名,初始化git

git提交流程图

提交到本地库

版本穿梭

分支操作

分支合并冲突

团队协作

github的使用

推送代码

克隆

拉取代码

团队协作冲突

团队协作之分支管理

推送分支到分支:

拉去远程库分支到本地库:

本地删除远程分支:

gitignore

用户签名,初始化git

--global是全局设置的意思

git提交流程图

master又叫历史区

提交到本地库


git status  //显示暂存区状态(绿色表示在暂存区,红色的表示没在暂存区的)

git rm --cached 1.txt (从暂存区删除该文件)

当提交完后,暂存区会被清空。当你提交过后,你之后又要提交,直接git add . 后会自动区分哪个文件修改了(只会把修改过的文件提交到暂存区中)

注意:在git log后,如果你的信息过多,会让你一直回车才能显示完,

如果要在中途或者最后显示完后退出:按下q键就行了

如果在git commint 之后忘记-m 注释了 会直接跳到vrm编辑界面:

因为提交时必须要注释,这个时候按下i后变成insert模式,然后就可以写注释了(不要写在井号里):

这个时候注释(A功能-22222)就写好了,退出的话先按esc退出insert模式然后输入:wq然后直接回车就行了

版本穿梭

head表示当前位置,master是默认主分支。

如果往回退了一下,这时候用git log是看不到后面的分支的,只能看到目前结点和前面的分支

这时候要用git reflog就可以看到所有记录了:

也可以通过这个字符串来回退(git reflog , git log 都可以看到):

注意:回退后会导致工作区代码同样发生回退(硬回退)

如果不想工作区代码发生回退可以用软回退,这样只会回到缓存区:

软回退的作用:
1.重新git commit -m "XXXXX" 改变注释的内容

2.如果某个文件有bug,但是又不想修改bug单独占一个结点,可以先把这个结点返回到暂存区中然后再把修改的新代码add到暂存区,然后再提交到历史区

所以尽量不要用reset,用revert.

revert相当于你回退到了版本1,但是不会对其他版本造成影响,而是新造一个版本,这个版本就是版本1了

新生成一条记录,所以会有注释

直接写在上面

而我觉得版本回退最重要的作用:

如果某次推送不小心推送错了代码,这时可直接revert回退到上个版本再次推送即可覆盖

如果有人不小心把分支代码不小心提交到了远程库的主分支上:

重置 master 分支到之前的状态 你可以使用 git reset 来重置 master 分支到目标提交:

git checkout master  # 切换到 master 分支
git reset --hard <commit-id>  # 将 master 分支重置到目标提交

分支操作

为什么要有分支:
当测试人员在测试先版本时,如果开发人员又更新了版本测试版本就会发生改变

分支合并冲突

假如现在再写一个分支的代码,但是主分支有个bug要修改,修改完后等分支写完合并的时候会自动合并失败:

同时会自动进入手动合并状态。这时候打开合并的文件会发现:

这时候可以手动决定如何修改。修改完后,记得退出手动合并状态(提交至历史区):


 

团队协作

github的使用

点击第一个创建仓库

填写完名称即可创建(公开为所有人都能看,只有选定的人才能提交。私有为只能选定的人才能看和提交)

git remote add origin https://github.com/huangzhijun0210/test_warehouse.git
//把https://github.com/huangzhijun0210/test_warehouse.git取别名origin

通过remote -v查看是否关联上了:

如果写的时候不小心写错了可通过以下命令删除:

推送代码
git push -u origin master:master
//git push为默认,origin为推向的地址,master为要推送到的分支,
//后面的:master(代表要推送到远程仓库的分支)可以省略,默认是master
//-u:可加可不加,加上后设置这条推送为默认推送,以后直接git push就是默认推送了

推送完整流程:

克隆

当团队中来了另外一个人,这时候没有连上远程终端不能pull代码,所以需要克隆先把代码克隆下来:

拉取代码
git pull origin master
//从远程仓库master分支拉取
pull只拉取更新的,有修改的。拉去后和本地进行合并

团队协作冲突

这篇博客将多人协作和冲突问题解释得很清楚:

Git推送到远程仓库GitHub以及多人协作开发_多人维护的git推到远程仓库-CSDN博客

当另外一个人在同一个文件夹下推送后,你再次推送,就会报错:版本错误,这时候需要你先拉取最新版本,再推送

因为两个人改的不是同一个文件,所以直接esc,:wq退出即可

如果另外一个人修改了你要推送的代码,你pull后会进入手动合并状态,这时需要先手动合并代码才能推送上去

团队协作之分支管理
推送分支到分支:

注意:不要把本地的分支推到远程的master上,这样写是错误的

拉去远程库分支到本地库:

这时不需要指定本地库的分支名,这时你直接切换会基于远程的login分支直接创建出本地的login分支(所以本地库的分支最好跟远程库的名字相对应,同样的推送如果名字相对应推送也可以省略远程库的分支名,一样会成功)

本地删除远程分支:

直接用空分支覆盖本地分支。

当分支功能完成后和主分支合并后再推送到远程主分支上,然后就要删掉远程库的分支

gitignore

创建完.gitignore后,写上不想上传的文件名,这时这个文件就会变灰,在上传到远程库时就会忽略掉

这样子就是所有txt文件全部被忽略了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/913828.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

6、If、While、For、Switch

6、If、While、For、Switch 一、If 1、if-else if (boolean) {代码块 } else if (boolean) {代码块 } else if (boolean) {代码块 } else { // 默认情况代码块 }关于IDEA单元测试控制台不能输入数据的问题&#xff1a; https://blog.csdn.net/m0_72900498/article/details/…

【智谱开放平台-注册/登录安全分析报告】

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 1. 暴力破解密码&#xff0c;造成用户信息泄露 2. 短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉 3. 带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造…

贪心算法day05(k次取反后最大数组和 田径赛马)

目录 1.k次取反后最大化的数组和 2.按身高排序 3.优势洗牌 1.k次取反后最大化的数组和 题目链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 代码&#xff1a; class Solution {public int largestSumAfterKNegations(int[] nums, int k) {//如…

简简单单的UDP

前言 上一篇了解了TCP的三次握手过程&#xff0c;目的、以及如何保证可靠性、序列号与ACK的作用&#xff0c;最后离开的时候四次挥手的内容&#xff0c;这还只是TCP内容中的冰山一角&#xff0c;是不是觉得TCP这个协议非常复杂&#xff0c;这一篇我们来了解下传输层另外一个协…

安科瑞工业绝缘监测装置:保障煤矿井下6kV供电系统安全运行的关键应用——安科瑞 丁佳雯

在现代煤矿开采中&#xff0c;供电系统的稳定性和安全性是至关重要的。特别是在煤矿井下&#xff0c;由于环境复杂、湿度大、易腐蚀等因素&#xff0c;供电系统面临着严峻的挑战。为了确保供电系统的正常运行和矿工的生命安全&#xff0c;采用先进的绝缘监测装置显得尤为重要。…

OKG Research:用户意图驱动的Web3应用变革

出品&#xff5c; OKG Research 作者&#xff5c;Samuel QIN 当前加密市场的快速演变中&#xff0c;用户增长成为行业可持续发展的基石。目前主流观点在推动行业前进的路上&#xff0c;从单纯的技术探索在向更注重应用价值的方向转变。尽管近年来Web3生态系统发展迅速&#xf…

人工智能:重塑医疗、企业与生活的未来知识管理——以HelpLook为例

一、医疗行业&#xff1a;AI引领的医疗革新 随着人工智能&#xff08;AI&#xff09;技术的持续飞跃&#xff0c;我们正身处一场跨行业的深刻变革之中。在医疗健康的广阔舞台上&#xff0c;人工智能技术正扮演着日益重要的角色。它不仅能够辅助医生进行病例的精准诊断&#xf…

Ubuntu 20.04安装CUDA 11.0、cuDNN 8.0.5

不知道咋弄的ubuntu20.04电脑的cuda驱动丢了&#xff0c;无奈需装PyTorch环境&#xff0c;只有CUDA11.0以上版本才支持Ubuntu20.04&#xff0c;所以安装了CUDA11.0、cuDNN8.0.5 为防止频繁在浏览器检索对应的贴子&#xff0c;今天记录一下。 一. 驱动安装 为防止驱动安装后没…

Vue Element-UI 选择隐藏表格中的局部字段信息

一、功能需求分析 为什么需要这个功能&#xff1f; &#xff08;1&#xff09;简化信息&#xff0c;减少混乱&#xff1a; 就像整理抽屉&#xff0c;只留下常用的东西&#xff0c;这样找起来更快&#xff0c;看起来也更整洁。在表格中&#xff0c;只展示需要的字段&#xff…

STL学习-排序算法

1.sort 使用快速排序,平均性能好O(nlogn),但最差情况可能很差O(n^2)。不稳定。 sort(v.begin(),v.end());//对v容器进行排序,默认升序 sort(v.begin(),v.end(),greater<int>());//降序排序 2.partial_sort 使用堆排序,平均性能和最差都是O(nlogn),但实际情况比sort慢…

WSL 2 中 FastReport 与 FastCube 的设置方法与优化策略

软件开发人员长期以来一直在思考这个问题&#xff1a;“我们如何才能直接在 Windows 中运行 Linux 应用程序&#xff0c;而无需使用单独的虚拟机&#xff1f;” WSL 技术为这个问题提供了一个可能的答案。WSL 的历史始于 2016 年。当时&#xff0c;其实现涉及使用 Windows 内核…

JVM的组成、字节码文件的组成

目录 java虚拟机的组成 字节码文件的组成 基础信息 常量池 字段 方法 属性 字节码相关的常用工具&#xff1a; 总结&#xff1a; 1、如何查看字节码文件&#xff1f; 2、字节码文件的核心组成有哪些&#xff1f; java虚拟机的组成 类加载器 ClassLoader运行时数据区…

李佳琦回到巅峰背后,双11成直播电商分水岭

时间倏忽而过&#xff0c;又一年的双11即将宣告结束。 从双11正式开始前的《新所有女生的offer》&#xff0c;到被作为“比价”标杆被其他平台直播间蹭、被与其他渠道品牌比较&#xff0c;再到直播间运营一时手快多发了红包……整个双11周期下来&#xff0c;李佳琦直播间在刷新…

使用iviewui组件库的坑

背景 使用view-design组件库的Input组件的时候&#xff0c;按照产品的要求&#xff0c;输入框中只能键入正整数。 使用效果 如果直接使用组件的type属性&#xff0c;设置类型为number时&#xff0c;乍一看没啥问题&#xff0c;但是当我们键入 小数点(.) 或者 e/E 后面没有跟任…

软件测试学习记录 Day1

根据黑马程序员最新版的软件测试课程所做的笔记&#xff0c;需要原件后台私信&#xff1a; 练习提取测试点&#xff1a; 博主的答案&#xff0c;有不一样看法的可评论区讨论&#xff1a;

uni-app选项卡制作 ⑥

文章目录 十、选项卡制作一 、组件创建二、scroll-view 组件使用三、点击设置按钮跳转到标签设置界面四、数据获取 十、选项卡制作 1.遇到错误&#xff1a; 2.解决问题&#xff1a; 3.this 指向问题 // 指向&#xff1a; get_label_list uniCloud.callFunction({name: "g…

最新x64dbg软件

最新x64dbg软件 1、简介2、调试程序界面3、开源官网 1、简介 最新x64dbg软件-比OD更好的工具&#xff0c;原生支持中文界面和插件。 x64dbg是一款专业的windows系统下的64位调试器&#xff0c;界面简洁、操作简单&#xff0c;与 “OllyDbg” 调试工具非常相似&#xff0c;如果…

【时间之外】IT人求职和创业应知【31】

目录 新闻一&#xff1a;2024年“秦创原沣东杯”陕西省科技工作者创新创业大赛颁奖仪式暨沣东新城机器人产业发展大会盛大启幕 新闻二&#xff1a;声网CEO赵斌&#xff1a;RTE将成为生成式AI时代AI Infra的关键部分 新闻三&#xff1a;“5G工业互联网”融合应用试点城市名单…

Docker使用docker-compose一键部署nacos、Mysql、redis

下面是一个简单的例子&#xff0c;展示如何通过Docker Compose文件部署Nacos、MySQL和Redis。请确保您的机器上已经安装了Docker和Docker Compose。 1&#xff0c;准备好mysql、redis、nacos镜像 sudo docker pull mysql:8 && sudo docker pull redis:7.2 &&…

04 深入 Oracle 并发世界:MVCC、锁、闩锁、事务隔离与并发性能优化的探索

文章目录 深入 Oracle 并发世界&#xff1a;MVCC、锁、闩锁、事务隔离与并发性能优化的探索一、多版本并发控制&#xff08;MVCC&#xff09;1.1 理论解析1.2 实践应用 二、锁与闩锁机制2.1 理论解析2.2 实践应用 三、事务隔离级别3.1 理论解析3.2 实践应用 四、死锁预防与解决…