Git使用指南 | 青训营笔记

121 阅读4分钟

这是我参与「第四届青训营 」笔记创作活动的的第5天

版本控制Git

在实际开发过程中,我们的项目会有多个版本v1.0, v1.1等,随着版本越来越多,人为管理的开销就越来越大,因此我们希望有一个版本控制工具来协调我们管理项目,版本控制工具有很多,主流的以Git,SVN为主,今天我们就来学习一下Git

在实际使用中,Git主要用的是Git Bash命令行进行配置,其中以linux作为内核,这里我们先介绍一下常用的linux命令

常用的linux命令

  1. cd:切换到指定目录,如cd ..切换到上一级目录
  2. pwd:显示当前所在目录的绝对路径
  3. ls:列出当前目录下的所有文件
  4. touch:新建一个文件,如touch test.txt
  5. rm:删除文件或文件夹,如rm test.txt, rm -r directory(删除文件夹)
  6. mv:移动文件到指定文件夹,如mv test.txt directory(将test.txt文件移动到directory目录)
  7. mkdir:新建文件夹
  8. clear:清屏
  9. history:查看历史输入命令
  10. help:获取帮助
  11. exit:退出命令行

Git配置

git congfig -l 显示当前的git配置

image.png git config --system --list 显示系统为你设定的配置

image.png git config --global --list 显示用户自己设定的配置

image.png

实际上这些配置信息都保存在对应的文件中,我们也可以直接修改文件内容。

image.png

image.png 系统的配置文件gitconfig保存在git安装目录下 etc/gitconfig

用户的配置文件.gitconfig保存在C:/users/(你window登录的用户名)/.gitconfig(这个文件只有你设置了user.name或user.email才会生成)

我们安装好Git的第一件事就是配置user.name以及user.email,因为我们是用Git提交代码,你是谁并提交了这段代码是需要在日志上记录的。用下面的命令设置:

git config --global user.name "yourname" #你的用户名
git config --global user.email "youreamil" #你的邮箱

Git操作

  • 新建仓库
git init #初始化一个仓库
git clone [url] #从远程仓库复制

提交文件

git add [filename] #添加指定文件到暂存区
git add . #添加所有文件到暂存区

将文件提交到Stage(暂存区),如常用的git add .将当前目录下所有文件提交到Stage,这时文件状态为staged

git commit -a -m "message" #-m是强制选项,写你文件的提交信息

将暂存区的文件提交到Responsity(本地仓库),每次提交都要附加message,如版本信息v1.08这种,或者这次更新的内容之类的。

git status [filename] #查看指定文件状态
git status #查看所有文件状态

查看所有的文件状态,在git中文件通常有4种状态

  1. Untracked :文件没有被追踪,表示文件还没有通过git add添加
  2. Modified: 本地仓库中有该文件,且该文件在本地已被修改
  3. Unmodified: 本地仓库中有该文件,且没有变化
  4. Staged: 提交到暂存区的文件
  • .gitignore文件

在提交文件时,我们可能并不需要把全部的本地文件提交,可以适当的过滤一些工具文件或者库文件之类的,就可以使用到.gitignore文件,在里面配置你需要过滤的文件。 image.png

分支

项目代码在多人进行开发时,如果有人在开发时,其他成员对仓库进行了修改,就很有可能导致代码之间的冲突,并为此就需要使用分支来协调工作,分支可以相当于把项目复制一份,你在这上面修改不会影响到其他分支。

项目稳定的版本一般发行在master主分支上,其他分支可以用于发行不同的版本。

git branch #查看所有分支

git branch -r #查看远程的分支

git branch [branch] #新建一个分支

git branch -d [branch] #删除分支

git checkout [branch] #切换到指定分支

git merge [branch] #合并指定的分支到当前分支

git push origin --delete [branch] #删除远程仓库的分支

其他常用指令

git log #查看已经提交的信息

git reset --hard commit_id #恢复到对应commit_id的状态

git push origin #提交代码到远程仓库

git pull # 从远程仓库拉取代码

每次commit提交完成后都会生成唯一的commit_id,如果我们想要恢复到历史的某个状态,就可以用git reset --hard commit_id恢复。