Git(上) | 青训营笔记

63 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第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(下)明天更新