git guide

非常实用的Git中文汉化包工具(含安装教程) Git由Linus Torvalds于2005年创建,最初为Linux内核开发服务,现已成为全球最主流的分布式版本控制系统。其核心优势在于本地仓库支持、高效分支管理与强大的合并追踪能力,极大提升了代码协作的灵活性与安全性。在现代DevOps流程中,Git不仅是代码托管的基础工具,更深度集成于CI/CD、代码审查与自动化测试体系。然而,对于中文用户而言,原生英文界面增加了初学者的理解成本,影响操作效率。 阅读详情

一直想记下俩git的操作,有时候总是忘记,前面写过一点点,这次有忘记了,决定写个详细点儿的,有的是自己亲手试过,有的是网络经验:)

在学校的时候,为了防止本机磁盘坏了或者不同人之间共享一份代码(版本管理),使用SVN,搭建SVN服务器,创建repository,
本机使用命令行或者eclipse(大部分时候我是写java)的SVN插件,一般也不用多个branch或者tag的时候,把repository里面的code check out 出来,

本地修改之后commit就提交到repo中,要拉到最新版本的时候就update to HEAD就可以了,使用起来比较清楚明白,本地没有“Repo”的概念,属于集中

式的版本控制与管理,而git是分布式的(也可以集中式的方式),在mark link中有讲解,同时也有git和svn的区别,这里分布式指的是每个使用者本地也有repo的概念,commit的时候,是先commit到本地,然后push到remote的repo中,拉取代码的时候,也是先pull,然后执行本地的merge(或者rebase)。因此使用svn的

时候我们知道,一旦连不上remote repo就无法使用了,而git大部分的操作都可以在本地完成(可以使用命令行,或者eclipse 配egit,挺容易明白的)。

BTW, git 既然是分布式的,我们平时使用git的时候也需要从一个“集中式”的地方拉code,然后push上去,为什么呢,这样做是为了方便,实际上,使用git时,

每个人的本地都是完整的代码库,两个人之间可以传递修改的文件,但是很多人一起协作一个大项目又不在一个局域网的时候,建立一个“服务节点”更加方便而已。

其实个人觉得,也不能把集中式的说的一无是处,从理解起来而言,集中式更容易理解,本人用过IBM的RTC,其实觉得挺好用的,基本自己就能摸索明白,

也挺人性化的。:)


如果使用过github的话,github网站可以看成一个“服务节点”,托管很多的项目,我们也可以把自己的项目放在上面,如果是公开的话不要钱,但是是私有项目,

则需要交钱,由于public的项目其他人也可以看见,为了不让其他人提交code把我们的库弄乱了,注册github账户之后,需要在自己的账户中配置ssh key(

在自己平时的开发机上,生成rsa的key,将public的key传到github上)


以下内容均学习自mark link并经过试验后记录:

安装好git之后,一般做个设置标明操作者的身份:

git config --global user.name xxx

git config --global user.email xxx


如果要创建自己的git库,选择一个目录比如 "/home/xxx/mygit", 进入目录执行git init即可,要添加一个文件readme.txt, 执行

1. git add readme.txt即可(readme.txt要放到mygit目录下,add操作将readme.txt放到仓库中),这只是放到仓库中,和“提交到”仓库不一样,提交需要执行:

2. git commit -m 'commnet', git是一次性将add进来的文件都提交,add可以分批执行。

git add是将工作区(mygit)的文件加到版本库中的“暂存区”,git commit则是将“暂存区”的文件加到“具体分支”,一般git init之后默认创建master branch。

需要指出的是,git commit只会“暂存区”的东西合并到具体分支,不会将工作区的内容合并,因此,git add之后,再次修改文件,此时执行git commit的话,

只会将第一次git add的变化合并到分支

使用git commit -a 表示将所有的改动commit, --amend表示将上次commit的结果修改掉(使用git log看的时候,上次commit被替换掉)

3. 修改文件readme.txt, 使用git status, 可以发现readme.txt modified了

4. git diff readme.txt, 查看具体的修改

5. 修改后需要再次执行git add 和git commit,然后git status查看没有新的变化“nothing to commit”

6. 使用git log查看commit的历史记录(commit时候的 -m 参数的作用就出来了,告诉你这次提交进行了什么事情)

7. 要回退到某个版本,使用git  reset  --hard head^ (上上个版本是head^^, 更多的是head~number), 实际上,git 的head是一个指针,每一次commit都有一个

commit id,git reset --hard commit-id即可以到执行的版本,往回退或者前进,来回滑动,如果退到很早的版本,又想回到未来的某个版本,

使用git reflog查看reset的记录都在,执行git reset --hard xxx即可

8. 使用git status查看到“暂存区”有了新的文件时,可以使用git reset HEAD test.txt,将test.txt从“暂存区”移除出去

9. 如果修改了一个工作区中的文件,想要丢弃修改怎么办呢? git checkout -- test.txt,丢弃修改,或者我之前简略的文章中有提到使用git checkout . 丢弃所有修改,

对文件而言,git checkout -- xxx或者git checkout. 是将“版本库”中的文件替换工作区的文件

10. 使用git rm test.txt,之后git commit -m xxx ,真正的从版本库中删除文件,可以和git add的过程对应

11. 如果已经有一个远程的git库(比如在github上),将本地(刚才使用git init创建的)git库和远程的(空的情况下)关联起来,使用:

关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git, 关联之后第一次提交使用git push -u origin master,

此后提交只要git push origin master即可

12. 如果先有本地的库,之后想放到远程的托管,使用11中的关联比较方便的,但如果现有的远程库,比如openstack中,想从远端拉下code进行开发,就使用

git clone将代码拉下来即可


前面的操作都是针对master分支,git在分支管理上也十分强大,通过改变HEAD的指针,在不同的branch之间切换,速度很快:

1. 创建一个新的分支, git checkout -b dev, (相当于执行git branch dev先创建分支, 再执行git checkout dev,切换分支)

2 . 使用git branch查看分支情况,在ubuntu下,当前分支会标记星号

3.在branch上开发之后,可以通过git merge合并分支(比如当前在master分支下,执行git merge dev, dev分支的内容则会合并到master分支中),之后可以

通过 git branch -d dev(删除dev分支)

4.如果3中进行merge时候,返现冲突,两个branch都对内容产生了影响,此时在master在再次对冲突文件执行git add 和git commit,冲突解决,想看冲突的情况可以使用

“git log --graph --pretty=oneline --abbrev-commit“查看形象的冲突合并过程。

5. fast forward 和非fast forward: 所谓使用fast forward是指master分支和dev分支合并后,删除dev分支,则dev分支的信息也将丢失, 而非fast forward则会

保留dev的分支信息(具体参见mark link的图),命令为:git merge --no-ff -m "no-ff merge" dev; master分支一般是发布版本,平时候都是在别的branch上开发,

比如openstack里面,我们在kilo和juno的分支上开发,但到了具体的时间点会merge到master上发布。
6.在openstack中,要有人提交bug,我们要修复bug的时候,使用git checkout -b bug-xxx ,创建bug分支,然后修改,git add, git commit, 之后使用git merge --no-ff

合并分支;如果在修bug之前,自己工作区修改了一部分,又不想丢弃,怎么办呢,使用git stash保存工作区,bug完成后继续工作,查看stash内容:

git stash list, 可以看到”stash@{0}: WIP on master: 7d25773 modify test“,

这时使用git stash apply stash@{0},回复工作区即可,删除stash 则用git stash drop完成,或者回复时候使用git stash pop即可

7.前面说了merge之后,删除dev分支,使用git branch -d dev即可,不过对于还没有merge的分支,使用git branch -D dev即可

8.使用git remote -v 查看远程分支内容, 要想对远程的某一个分支进行开发,先在本地创建和远程对应的分支:

git checkout -b branch-name origin/branch-name,将本地分支和远程关联起来:git branch --set-upstream branch-name origin/branch-name

9.tag, 可以理解为一个快照,和HEAD不同的是,tag是不可以移动的,使用git tag name,创建一个标签,默认是对HEAD创建,要想对某次commit之后的

状态创建标签git tag -a <tagname> -m "xxx" commit_id, 可以用PGP的私钥签名一个标签(安装gpg):git tag -s <tagname> -m "xxx" commit_id.

10.至于git的删除以及remote端的删除,我基本上用不上,在mark link中有讲解

11. 如果要建立自己的分支,在github上fork一个项目,然后这个项目就在自己的repo下面,我们可以进行修改,而直接给github上的项目(比如openstack的)

上传自己的修改是不行的,除非你有权限

12. 搭建自己的git server, mark link中也有讲解



mark link:

http://blog.youkuaiyun.com/huacuilaifa/article/details/19124635

http://www.cnblogs.com/qinfengxiaoyue/p/3450194.html

git 教程

http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/

http://www.cnblogs.com/lwzz/archive/2013/02/23/2921426.html

SpringBoot+Vue+Mysql社区医院信息平台(源码+文档) SpringBoot+Vue+Mysql学生宿舍信息管理系统 WEB端软件项目(源码+文档) 项目包含:①完整源码(后端+管理后台+用户前台);②数据库脚本文件;③万字论文文档;④开题报告;⑤答辩PPT;⑥项目运行视频教程。 项目架构: B/S 架构、MVC 分层设计 技术栈: Java、MySQL、SpringBoot、MyBatis-Plus、Token 权限校验、管理后台 Vue+ElementUI+ECharts、用户前台 Layui+jQuery、Maven 构建。 一、角色设计 学生用户: 注册登录、浏览宿舍信息、查询宿舍安排、在线报修、缴费查询、失物招领、桶装水预订、评论交流、收藏等。 商家用户: 注册登录、桶装水品牌与商品信息维护、预订订单查看与处理。 维修人员: 注册登录、查看待处理报修、接单维修、填写报修处理结果与进度反馈。 管理员: 学生管理、班级管理、宿舍信息管理、宿舍安排管理、报修处理管理、缴费信息管理、卫生检查与文明宿舍管理、失物招领管理、桶装水与商家管理、维修人员管理、公告资讯与轮播图管理等。 二、前台功能模块(学生端) 1. 首页展示:轮播图、宿舍公告、最新动态推荐、常用服务快速入口 2. 宿舍信息模块:宿舍列表、楼栋与房间条件筛选、宿舍详情查看、我的宿舍安排查询 3. 在线报修模块:在线提交宿舍设施报修申请、上传故障描述、查看报修进度与维修处理结果 4. 缴费模块:水电等缴费记录查询、缴费状态查看 5. 卫生检查与文明宿舍:宿舍卫生检查结果公示、文明宿舍展示 6. 失物招领模块:失物信息发布、招领信息发布、详情查看、评论互动 7. 桶装水预订:桶装水品牌与商品浏览、在线预订、我的预订记录查询 8. 假期留宿:假期留校申请提交、申请记录查询 9. 评论与收藏:信息评论、查看他人评论、评论回复互动、收藏感兴趣的内容 10. 个人中心... 立即下载

相关推荐

YOLOv8作物病害检测实战源码

这是一套基于YOLOv8n的农田病虫害目标检测系统,对叶片照片做目标检测,识别健康叶片、褐斑病、白粉病、锈病四类,并给出对应防治建议。全流程纯CPU可跑,配套交付完整Python源码、9章实战教程(md/html/pdf三种格式)、100张自造样本及YOLO标签、训练曲线与混淆矩阵截图、Tkinter界面和答辩PPT。 系统围绕五项功能展开:同一套推理逻辑覆盖图像、视频、摄像头三种来源;图形界面选文件即检测,画面叠彩色框标注病名与置信度,右侧面板同步给出症状与防治措施;检测记录自动写入CSV,统计页一键生成四类病害占比饼图;训练结束自动产出损失与精度曲线;内置防治建议文案库,检测命中即回填面板。 选型用YOLOv8n nano档,参数量约320万、权重约6.2MB,CPU单帧几十毫秒,小样本训练5到8分钟完成。数据由data_gen.py程序化绘制100张叶片图,固定随机种子,重跑分布一致,不依赖公开数据集。依赖全部锁版本,教程第7章整理了19条真实报错及排查方法,第8章给出换模型档、换PlantVillage数据集的迁移路径。 适合做计算机视觉方向课程设计或毕业设计的学生,也适合智慧农业方向想了解检测模型如何落进业务面板的学习者。不需要GPU,不需要系统学过目标检测,教程第3章会按需补齐原理。 使用时先pip install -r requirements.txt装好依赖,download_data.py下载预训练权重,data_gen.py生成样本后train.py训练,完成后用main.py infer批量检测或main.py gui启动界面。

git怎么切换中文?

git怎么切换中文?

weixin_45387943的博客 3万+

数据挖掘实战:决策树 + 聚类 + 关联规则,零 Key 离线可跑(Python 源码)

数据挖掘实战包。用 Python 标准库实现 CART 风格决策树、K-Means 聚类与 Apriori 关联规则,在虚构「星河便利店」会员表和购物篮上跑通分类、分群与购物篮分析,并给出准确率、轮廓系数、支持度/置信度/提升度。零第三方依赖、零 API Key 即可离线跑通。含 4 个样例、离线冒烟、中文 README(含「使用方法」)。均为作者原创可运行源码。MIT。作者 blog.youkuaiyun.com/mtl1994

git入门

https://backlog.com/git-tutorial/cn/intro/intro1_1.html教程1 Git的基础安装Git在安装之前,首先需要搭建使用Git的环境。您可以选择Windows(GUI)、Mac(GUI)、或命令行(主控台)作为安装Git的环境。下面将根据各个环境进行讲解。如果您是开发人员或者习惯了使用命令行,可以试着用命令行来操作Git。请选择您使用的电脑系统   ...

大强博客 581

产业园区如何高效对接企业技术需求与高校科研成果?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

国央企创新负责人如何快速掌握本地科技资源分布与匹配情况?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

Git 设置中文

1、命令窗口设置中文 2、Git Gui 操作窗口设置中文 右键选择Options 选择window 找到 UI language 下拉选择 zh_CN 就是中文 保存之后就是 中文了 2、Git Gui 操作窗口设置中文 先下载中文压缩文件包 https://files.cnblogs.com/files/chenghu/git-gui-zh-master.zip GitHub 下载地址: https://github.com/stayor/git-gui-zh 下载完成后复制这.

weixin_44601413的博客 9022

国央企创新负责人如何实现科技成果的精准识别与高效筛选?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

Git简介

文章目录GitGit特点Git的由来Git的多版本控制集中式VS分布式 Git 何是Git? Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 [1] Git 是 [Linus Torvalds](https://baike.baidu.com/item/Linus Torvalds/9336769) 为了帮助管理 Linux 内...

ChineseLiJie的博客 370

高校技术转移办公室人员如何系统化管理科技成果信息?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

在天问block环境下LU-ASR01与51单片机的基础运用

正确步骤将模块和电脑连接后,仍然显示未连接(如4.1中图片中的编译下载后面显示未连接),可以尝试关闭软件后尝试,如果仍然不行换一条type-c线再试;以上方式都不行,可能要怀疑ASR01硬件损坏,跟商家联系!!!

BUG7073的博客 1万+

探索Visual Git Guide:图形化理解Git操作的强大工具

探索Visual Git Guide:图形化理解Git操作的强大工具 Git是世界上最流行的分布式版本控制系统,但其复杂的命令行语法和操作流程常常让初学者感到困惑。为了解决这个问题,开发者,一个直观的、交互式的可视化教程,帮助用户更好地理解和掌握Git。 项目简介 Visual Git Guide是一个在线资源,它以简洁明了的图表形式解释Git的基本概念和常用命令。每个操作都配有一个动态图示,显示...

gitblog_00091的博客 515

【CAPL实用开发】--- 使用VN1640A测试Busoff快慢恢复

使用VN1640A测试Busoff快慢恢复,包含具体的CAPL代码实现。

LabVIEW、CAPL、python、车载以太网等学习分享,文章正在写 2094

推荐使用:git-commit-style-guide 开源项目

推荐使用:git-commit-style-guide 开源项目 在软件开发的世界里,代码的质量和可维护性是至关重要的。一个统一且规范的Git提交日志不仅能够提升团队的工作效率,还能为后续的代码审查、版本发布以及日志自动化生成等提供极大的便利。今天,我们要介绍的就是这样一个能够帮助团队统一Git提交日志标准的开源项目——git-commit-style-guide。 项目介绍 git-commit...

gitblog_00946的博客 379

WPS Office 2026免费安装指南:AI办公与安全使用全解析

办公软件作为数字化办公的核心工具,其基本原理是通过文档处理、数据计算和演示展示等功能模块满足用户日常办公需求。随着人工智能技术的发展,现代办公软件逐步集成AI能力,通过自然语言处理和数据分析算法提升工作效率。在技术价值层面,优秀的办公软件不仅需要保持格式兼容性和跨平台同步能力,更要注重用户数据安全防护。从应用场景来看,无论是个人文档编辑、企业报表分析还是团队协作演示,办公软件都发挥着关键作用。WPS Office 2026作为国产办公软件代表,深度融合AI助手功能,支持智能写作和数据分析,同时通过官方免费策

weixin_30599769的博客 721

5分钟搞懂Paris公式:如何用裂纹扩展速率预测零件寿命(附Python代码示例)

本文详细介绍了Paris公式在裂纹扩展速率预测零件寿命中的应用,通过Python代码示例展示了从理论到实践的完整流程。文章涵盖了Paris公式的工程本质、寿命预测计算流程、几何修正因子选择以及实际案例演示,帮助工程师快速掌握这一关键技术。

weixin_29309475的博客 428

项目推荐:Git Commit Emoji Guide - 让你的Git提交更加生动有趣!

项目推荐:Git Commit Emoji Guide - 让你的Git提交更加生动有趣! 在这个追求高效与趣味的时代,【Git Commit Emoji Guide】横空出世,为开发者们带来了一股清新的编码之风。此项目基于Carlos Cuesta的原创意,旨在通过 emoji 为Git提交信息增添一抹亮色,同时也让代码版本控制变得更加直观和趣味盎然。 项目技术分析 Gitmoji 是一整套精...

gitblog_00253的博客 350

使用DrissionPage实现携程酒店信息智能爬取

本文介绍了一个基于DrissionPage技术的携程酒店信息爬虫系统,通过监听API数据包实现高效采集。系统可自动获取酒店名称、价格、评分、位置等15个维度的数据,支持多页滚动加载和智能去重。相比传统爬虫,该方法直接解析API返回的JSON数据,避免了复杂的HTML解析和加密参数分析,提高了开发效率和稳定性。文章详细阐述了13个关键实现步骤,并强调数据采集应严格遵守法律法规,仅用于技术学习和市场研究。该系统可为旅游决策、价格监测等提供数据支持,但需注意合理使用频率和隐私保护。

那些看似不起波澜的日复一日,会在某天让你看到坚持的意义 389

Git Commit Emoji Guide:让代码提交更有趣、更直观

Git Commit Emoji Guide:让代码提交更有趣、更直观 项目介绍 在日常的代码开发中,Git 提交记录是我们追踪项目进展、回溯问题的重要依据。然而,传统的提交信息往往显得单调乏味,难以快速捕捉提交的核心意图。为了解决这一问题,Git Commit emoji Guide 应运而生。这是一个开源项目,旨在通过在 git commit 消息中引入表情符号(emoji),使提交信息更加生...

gitblog_00085的博客 507

RFSoC全面解析(八)—— ZCU111 RFSoC评估工具的上位机界面

下面的内容的参考文献为:XILINX公司文档UG1287。 XILINX公司提供了一个RFSoC的ADC/DAC性能的评估工具或者叫评估系统,这个文档就是讲如何使用这个评估工具的。 整个评估系统总的框图如上图所示,评估系统由上位机、ZCU111开发板、子卡以及网线、射频线缆组成。 ZCU111开发板内主要使用的RFSoC外设为时钟驱动和DDR4,RFSoC的PS部分和PL部分都使用了。 PS部分发挥的功能为通过网口与上位机通信,通过IIC总线控制时钟驱动芯片以及数据流控制等;PL部分发挥的功能为

4381

专为AI打造的浏览器:内存占用仅为Chrome的1/9、比Chrome快11倍(Docker部署教程,支持飞牛nas等服务器部署)

🚀 专为AI打造的无头浏览器来了! 用Zig从零构建,内存仅Chrome的1/9,速度快11倍,原生CDP协议支持Docker部署,适合爬虫、自动化测试和AI代理应用。✨

XiaoqiangClub的博客 732

怎么设置git的界面语言为中文

https://jingyan.baidu.com/article/ae97a64602a606bbfd461d93.html

吴成伟的博客 1万+

6.Burp Suite 入门篇 —— Burp Scanner 漏洞扫描

Burp Scanner 既可以是独立的全自动扫描器,也可以在手动测试中当作强大的辅助手段,而且随着技术改进,Burp Scanner 能检测到的漏洞数量也在不断增加。Burp Scanner 功能只在 burpsuite 专业版和企业版中里有,本篇教程讲的是专业版的 Burp Scanner 用法。

YouTheFreedom的博客 1万+

git项目比对_gitDiffTool 是一个Git代码对比工具,可以对Git项目的两个提交进行对比...

gitDiffToolgitDiffTool is a tool to compare two commits of a gitProject and generate the diff into html(generate in output/ dir of current dir). You can read the diff in one html page, the list of mod...

weixin_39869733的博客 1985

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

上一篇: how openstack console works
下一篇: openstack git
dingdingwolf
博客等级 码龄16年 7粉丝 94原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值