这是我参与「第五届青训营 」伴学笔记创作活动的第6天。
参考教程链接:www.bilibili.com/video/BV1FE…
1、版本控制
版本控制是一种在开发过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录备份以便恢复以前的版本的软件工程技术。主要用途:
- 实现多人协同开发
- 追踪文件历史记录
- 组织和保护代码文档
- 并行开发
- 统计工作量
- 跟踪开发流程
git是当下最流行的分布式版本控制工具之一。
2、git使用
-
Git Bash:Unix与Linux风格的命令行,使用最多,推荐。
-
Git CMD:Windows风格的命令行
-
Git GUI:图形界面
-
git的必要配置
- git config --global --list //查看系统配置
- git config --system --list //查看 用户配置
- git config --global user.name "xxx" //用户名配置(必需)
- git config --global user.email "xxx" //邮箱配置(必需)
3、git工作原理(核心)
git本地有三个工作区域:工作目录(Working directory)、暂存区(Stage/Index)、资源库(Repository)。第四个工作区域为远程仓库(Remote directory)
git的工作流程:
- 在文件目录中添加、修改文件
- 将需要进行版本管理的文件放入暂存区域 git add files
- 将暂存区域的文件提交到git仓库 git commit
- 推送到远程仓库 git push
git项目搭建:
- 本地搭建仓库
- git init
- 克隆远程仓库
- git clone [url]
git文件操作:
版本控制实际上就是对文件的版本控制,要对文件进行修改、提交等操作,首先要知道文件当前在什么状态。文件状态:
- Untracked:未跟踪。文件在文件夹中,没有加入到git库,不参与版本控制,通过git add状态变为staged。
- Unmodify:已入库,未修改。版本库中文件内容与文件夹中完全一致,被修改变为Modified,使用git rm移出版本库,则成为Untracked。
- Modified:已修改,仅仅是修改。通过git add可进入暂存staged状态,使用git checkout丢弃修改(从库中去除文件,覆盖当前修改),返回unmodify状态。
- Staged:暂存。执行git commit将修改同步到本地库中,变为unmodify状态,执行git reset HEAD filename取消暂存,文件状态为Modified。
文件操作:
- git status [filename] //查看文件状态
- git add . //添加到暂存区
- git commit -m "消息内容" //提交到本地仓库,-m 提交信息
- 忽略文件,在主目录下建立"gitignore"文件,此文件有以下规则:
- #为注释
- 使用Linux的通配符:(*)代表任意多个字符,(?)代表一个字符,([abc])代表可选字符范围,({string1,string2,...})代表可选字符串。
- (!)代表例外,不被忽略
4、远程仓库
设置本机绑定SSH公钥,实现免密码登录
- 进入C:\user\Administrator.ssh 目录
- 生成公钥 ssh-keygen
Git(下)明天更新