| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发工具 -> Git使用教程 -> 正文阅读 |
|
[开发工具]Git使用教程 |
1. 版本控制 实现跨区域多人协同开发 没有进行版本控制或者版本控制本身缺乏正确的流程管理,在软件开发过程中将会引入很多问题,如软件代码的一致性、软件内容的冗余、软件过程的事物性、软件开发过程中的并发性、软件源代码的安全性,以及软件的整合等问题。 无论是工作还是学习,或者是自己做笔记,都经历过这样一个阶段 !我们就迫切需要一个版本控制工具 ! 1.2 常见的版本控制工具 Git 1.3 版本控制分类 2. 集中版本控制 所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改 ? ? 所有的版本数据都存在服务器上,用户的本地只有自己以前所同步的版本,如果不连网的话,用户就看不到历史版本,也无法切换版本验证问题,或在不同分支工作。而且,所有数据都保存在单一的服务器 上,有很大的风险这个服务器会损坏,这样就会丢失所有的数据,当然可以定期备份。代表产品: SVN、CVS、 VSS 3. 分布式版本控制 不会因为服务器损坏或者网络问题,造成不能工作的情况! Git与SVN最主要的区别 ? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都是自己的电脑,所以首先要从中央服务器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,对网络带宽要求较高。 ? Git是分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库 ,工作的时候不需要联网了,因为版本都在自己电脑上。协同的方法是这样的:比如说自己在电脑上改了文件A ,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。Git可以直接看到更新了哪些代码和文件! ? Git是目前世界上最先进的分布式版本控制系统。 2. Git的历史
?镜像下载: http://npm.taobao.org/mirrors/git-for-windows/ 3.2 基本的Linux命令 cd : 改变目录。 cd . . 回退到上一个目录,直接cd进入默认目录 pwd : 显示当前所在的目录路径。 ls(ll): 都是列出当前目录中的所有文件,只不过ll(两个ll)列出的内容更为详细。 touch : 新建一个文件 如 touch index.js 就会在当前目录下新建一个index.js文件。 rm: 删除一个文件, rm index.js 就会把index.js文件删除。 mkdir: 新建一个目录,就是新建一个文件夹。 rm -r : 删除一个文件夹, rm -r src 删除src目录
mv 移动文件, mv index.html src index.html 是我们要移动的文件, src 是目标文件夹,当然, 这样写,必须保证文件和目标文件夹在同一目录下。 reset 重新初始化终端/清屏。 clear 清屏。 history 查看命令历史。 help 帮助。 exit 退出。 #表示注释 3.3 Git配置 查看配置 git config -l 查看不同级别的配置文件:
Git相关的配置文件: 1)、Git\etc\gitconfig :Git 安装目录下的 gitconfig --system 系统级 2)、C:\Users\Administrator\ .gitconfig 只适用于当前登录用户的配置 --global 全局 这里可以直接编辑配置文件,通过命令设置后会响应到这里。 3.4 设置用户名与邮箱(用户标识,必要) git config --global user.name "xuzheng" ?#名称 4. Git基本理论(重要) Workspace:工作区,就是你平时存放项目代码的地方 Directory:使用Git管理的一个目录,也就是一个仓库,包含我们的工作空间和Git的管理空间。 1、在工作目录中添加、修改文件; 2、将需要进行版本管理的文件放入暂存区域; 3、将暂存区域的文件提交到git仓库。 因此,git管理的文件有三种状态:已修改(modified),已暂存(staged),已提交(committed) 5. Git项目搭建 日常使用只要记住下图6个命令: 5.2 本地仓库搭建 1、创建全新的仓库,需要用GIT管理的项目的根目录执行: # 在当前目录新建一个Git代码库 5.3 克隆远程仓库 # 克隆一个项目和它的整个代码历史(版本信息) 6. Git文件操作 Untracked: 未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参与版本控制. 通过git add 状态变为Staged. #查看指定文件状态 在主目录下建立".gitignore"文件,此文件有如下规则: 忽略文件中的空行或以井号(#)开始的行将会被忽略。 这个其实可以作为大家未来找工作的一个重要信息! 1、注册登录码云,完善个人信息 2、设置本机绑定SSH公钥,实现免密码登录!(免密码登录,这一步挺重要的,码云是远程仓库,我们是平时工作在本地仓库!) # 进入 C:\Users\Administrator\.ssh 目录
4、使用码云创建一个自己的仓库! 许可证:开源是否可以随意转载,开源但是不能商业使用,不能转载,… 限制! 克隆到本地! 8. IDEA中集成Git 注意观察idea中的变化 2、修改文件,使用IDEA操作git。 添加到暂存区 这些都是单个人的操作! 学习的方式最重要!学会学习!我上课的更多时候都是在教大家去学习一种理念和思想(学习方式) 有道无术、术尚可求。有术无道、止于术! 真正的教学,授人以渔! 9. 说明:GIT分支 git分支中常用指令: # 列出所有本地分支 # 列出所有远程分支 # 新建一个分支,但依然停留在当前分支 # 新建一个分支,并切换到该分支 # 合并指定分支到当前分支 # 删除分支 # 删除远程分支 如果同一个文件在合并分支时都被修改了则会引起冲突:解决的办法是我们可以修改冲突文件后重新提交!选择要保留他的代码还是你的代码! master主分支应该非常稳定,用来发布新版本,一般情况下不允许在上面工作,工作一般情况下在新建的dev分支上工作,工作完后,比如上要发布,或者说dev分支代码稳定后可以合并到主分支master上来。 # 合并指定分支到当前分支 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 20:48:47- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |