Git学习

张开发
2026/4/13 23:58:21 15 分钟阅读

分享文章

Git学习
一、Git介绍Git是目前世界上最先进的分布式版本控制系统二、Git与Github2.1 两者区别Git是一个分布式版本控制系统简单的来说就是一个软件用于记录一个或若干个文件内容变化以便将来查阅特定版本修订情况的软件。Github(地址https://www.github.com是一个为用户提供Git服务的网站简单的来说就是一个可以放代码的地方(不过可以放的当然不仅仅是代码)。Github除了提供管理Git的web界面外还提供了订阅关注讨论组在线编辑器等丰富的功能Github被称之为全球最大的基友网站(全球最大同性交友网站)。三、Git安装下载地址https://git-scm.com/downloads注意安装路径尽量不要使用中文和特殊字符四、Git使用4.1 工作流程Git本地操作的三个区域工作区(working Directory): 添加、编辑、修改文件等动作暂存区暂存已经修改的文件最后统一提交到git仓库中Git仓库(git Repository):最终确定的文件保存到仓库成为一个新的版本并且对他人可见4.2 本地仓库操作仓库定义仓库又名版本库英文名repository,我们可以简单理解成是一个目录用于存放代码的这个目录里面的所有文件都可以被Git管理起来每个文件的修改、删除等操作Git都能跟踪到。1、在安装好后首次使用需要先进行全局配置2、创建仓库创建文件命令行mkdir xxx进入目录文件命令行cd xxx3、Git常用指令操作查看当前状态git status【非必要】添加到缓存区 git add 文件名提交至版本库 git commit -m 注释内容4、版本回退版本回退分为两个步骤进行操作1、查看版本确定需要回到的时刻点命令行指令a,git logb,git log --prettyoneline2、回退操作命令行指令git reset --hard 提交版本号3、查看历史操作命令行指令git reflog4.3、远程仓库定义直接在使用Git的web界面操作创建一个线上仓库(例如Github、GitLab、码云等等)1、两种常规使用方式1.1 基于http协议a,创建空目录b,使用clone指令克隆线上仓库到本地命令行指令 git clone 线上仓库地址c,在仓库上做对应的操作(提交暂存区、提交本地仓库、提交线上仓库、拉取线上仓库)提交到线上仓库的指令git pushd,拉取线上仓库命令行指令git pull1.2 基于ssh协议(推荐使用)定义该方式与https方式相比只是影响GitHub对于用户的身份鉴权方式对于git的具体操作(比如提交到本地、添加注释、提交远程等操作)没有任何影响生成公私钥指令(需要先安装OpenSSH)ssh-keygen -t -rsa -C 注册邮箱步骤:a,生成客户端公私钥文件b,将公钥上传到GitHub(或其他使用GIt的网站)4.4 Git分支操作原因在使用版本回退时每次提交后都会有记录Git把它们串成时间线形成类似于时间轴的东西这个时间轴就是一个分支我们称之为master分支。在开发的时候往往是团队协作多人进行开发因此光有一个分支是无法满足多人同时开发需求的并且在分支上工作并不影响其他分支的正常使用会更加安全Git鼓励开发者使用分支去完成一些开发任务。分支相关指令查看分支 git branch创建分支 git branch 分支名切换分支 git checkout 分支名删除分支 git branch -d 分支名合并分支 git merge 被合并的分支名对于新分支可以使用git checkout -b 分支名指令来切换分支-b选项表示创建并切换相当于是两个操作指令合并4.5 冲突的产生与解决原因在提交当前代码到远程仓库时未拉取线上最新的代码就会出现冲突提示我们要在再次push之前先git pull 操作五、Git实用技能5.1 图形管理工具1、Github for DesktopGithub官方出品的软件功能完善使用方便。对于经常使用Github的开发人员来说是非常便捷的工具界面干净用起来非常顺手顶部的分支时间线非常绚丽。2、Sourtree老牌的Git GUI管理工具号称是最好用的Git GUI工具功能丰富基本操作和高级操作都非常流畅适合初学者上手。3、TortoiseGit对于熟悉SVN的开发人员来说这个小乌龟图标应该是非常友善的。TortoiseGit简称tgit,中文名海龟git。他与其前辈TortoiseSVN都是非常优秀的开源版本控制客户端软件。5.2 忽略文件场景在项目目录下有很多万年不变的文件目录例如css、js、images等或者还有一些目录即便有改动我们也不想让其提交到远程仓库的文档此时我们可以使用忽略文件机制来实现。定义忽略文件需要新建一个名为.gitignore的文件该文件用于声明忽略文件或不忽略文件的规则规则对当前目录及其子目录生效。注意该文件因为没有文件名没办法直接在windows目录下直接创建可以通过命令行Git Bash 来touch创建。常见规则写法1、/mtk/ 过滤整个文件夹2、*.zip 过滤所有的.zip文件3、/mtk/doc 过滤某个具体文件4、!index.php 不过滤具体某个文件

更多文章