Git
1、版本控制
学习git之前,需要明白一个概念:版本控制
版本控制是一种在开发过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复到以前的版本的软件工程技术。版本迭代
- 实现跨区域多人协同开发
- 追踪和记载一个或者多个文件的历史记录
- 组织和保护你的源代码和文档
- 统计工作量
- 并发开发、提高开发效率
- 跟踪记录整个软件的开发过程
- 减轻开发人员的负担,节省时间,同时降低人为错误
简单说就是用于管理多人协同开发项目的技术。
没有进行版本控制或者版本控制本身缺乏正确的流程管理,在软件开发中将会引入很多问题:如软件代码的一致性、软件内容的冗余、软件过程的事物性、软件开发过程中的并发性、软件源代码的安全性、以及软件的整合问题。
Git Bash:Linux风格的命令行,使用最多。(推荐最多)
Git CMD: Windows风格的命令行。
Git GUI: 图形化的Git,不建议初学者使用,尽量先熟悉常用命令。
3、Linux命令学习
常用的Linux命令(平时一定要多使用这些命令)
-
cd:改变目录。
-
cd …/:回到上一目录。
-
pwd:显示当前所在的目录路径。
-
ls(ll):列出当前目录中的所有文件,ll列出的内容更详细。
-
touch:新建一个文件。如: 就会在当前目录下新建一个index.js文件。
-
rm:删除一个文件。 就是把index.js文件删除。
-
mkdir:新建一个文件夹。
-
rm -r:删除一个文件夹。 就是删除src文件夹。
rm -rf / :切勿在Linux中尝试!删除电脑中全部文件!(Linux中一切皆文件!)
-
mv:移动文件。,将index.js文件移动到src文件夹下并命名为index.js。
-
reset:重新初始化终端
-
clear:清屏
-
history:查看命令历史
-
help:帮助
-
exit:退出
-
#:表示注释
4、Git环境配置
4.1 查看配置
- Working Directory: 工作区,就是平时存放项目的地方。
- Stage: 暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息。
- History: 本地仓库,就是安全存放数据的位置,这里面有你提交的所有版本的数据。其中HEAD指向最新放入仓库的版本。
- Remote Directory: 远程仓库,托管代码的服务器,可以简单地认为是你项目组中的一台电脑用于远程数据交换。
5.1 工作流程
git的工作流程一般是这样的:
- 在工作目录中添加、修改文件。
- 将需要进行版本管理的文件放入暂存区域。
- 将暂存区域的文件提交到git仓库。
因此,git管理的文件有三种状态:已修改(modified)、已暂存(staged)、已提交(committed)
6.2 本地仓库搭建
搭建本地仓库的方法有两种:一种是创建全新的仓库,另一种是克隆远程仓库。
6.2.1 创建本地仓库
-
创建全新的仓库,需要在需要Git管理的项目的根目录执行:创建一个项目文件夹
-
执行Git操作:
-
执行后可以看到,仅仅在项目目录多出了一个 目录,关于版本等的信息都在这个目录里面。
-
执行后,会发现整个仓库都已经克隆到本地了。
7、Git文件操作
文件4种状态
- Untracked: 未跟踪,此文件在文件夹中,但并没有加入到git库,不参与版本控制。通过 状态变为 。
- Unmodified: 文件已经入库,为修改,即版本库中的文件快照内容和文件夹中完全一致。这种类型的文件有两种去处,如果它被修改,会变为 状态。如果使用 移除版本库,则成为 文件。
- Modified: 文件已修改,仅仅是修改,并没有进行其他的操作。这个文件也有两个去处,通过 可进入暂存 状态,使用 则丢弃修改过,返回到 状态,这个 即从库中取出文件,覆盖当前修改。
- Staged: 暂存状态,执行 则将修改同步到库中,这时库中的文件和本地文件又变成一致,文件为 状态。执行 取消暂存,文件状态为 。
7.1 查看文件状态
上面的4种状态,通过以下命令可以查看文件的状态:
7.2 完整操作
7.3 忽略文件
有时候我们不想把某些文件纳入到版本控制中,比如数据库文件、临时文件、设计文件等。
在主目录下建立 文件,此文件有如下规则:
- 忽略文件中的空行并以井 (#)开始的行将会被忽略。
- 可以使用Linux通配符。例如:星 (*)代表任意多个字符,问好(代表一个字符,方括 ([abc])代表可选字符范围,大括 ({string1,string2})代表可选的字符串等。
- 如果名称的最前面有一个感叹 (!),表示例外规则,将不被忽略。
- 如果名称的最前面是一个路径分隔符(/),表示要忽略此目录下的某个文件夹。
- 如果名称的最后面是一个路径分隔符(/),忽略目录下的所有文件
8、使用码云 Gitee
-
注册登录码云,完善个人信息(官 :https://gitee.com/)
-
设置本机绑定SSH公钥,实现免密登录!
-
进入 C:Users(用户名).ssh 目录(若没有的话手动创建一个 mkdir .ssh)
-
生成公钥
-
然后会生成两个文件在 文件夹下。
-
使用码云创建一个自己的仓库。
9、IDEA集成Git
-
新建项目,绑定Git
若要使该项目成为带Git的项目,那么该项目的根目录下应该有 这个隐藏文件。使用 生成。
-
修改文件,使用IDEA操作Git
-
提交测试
新建了一个分支 ,里面内容与 分支一样。然后在 分支中新建一个 文件,并和。然后再切换分支到,然后执行合并操作。成功!
再切换到分支,并修改文件,并和。
这时候,就要我们手动打开文件,合并内容。
11、Git的commit信息规范
feat: 新功能(feature)
fix: 修补bug
docs: 文档(documentation)
style: 格式(不影响代码运行的变动)
refactor: 重构(即不是新增功能,也不是修改bug的代码变动)
test: 增加测试
chore: 构建过程或辅助工具的变动
参考资源:
- B站狂神说 https://www.bilibili.com/video/BV1FE411P7B3=1&spm_id_from=pageDriver
- B站尚硅谷 https://www.bilibili.com/video/BV1vy4y1s7k6=18&spm_id_from=pageDriver
文章知识点与官方知识档案匹配,可进一步学习相关知识Git技能树首页概览2940 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!
-