git介绍

一、最原始的版本控制有哪些缺点?

  • 多个文件保留所有版本时,需要为每个版本保存一个文件

  • 多人协同操作时,需要将文件打包发来发去

  • 容易丢失

为了解决以上问题,应运而生了一批版本控制工具:VSS、CVS、SVN、Git等

注意:一般版本控制工具包含两部分

  • 客户端:本地编写内容以及版本记录

  • 服务端:将内容和版本记录同时保存在远程

二、GIT介绍:

1、Git 是一个开源的分布式版本控制软件,用以有效、高速的处理从很小到非常大的项目版本管理。

2、GitHub是一个基于Git的远程文件托管平台。可以将内容以及版本记录在远程也保存一份 

git把管理的文件分为了两个区域四个状态

工作区:

  当前开发程序所在的目录称为工作区。工作开发都在该目录,该区域的文件有状态变化会由git自动检测,可以使用【git status】命令查看

版本库:

  工作区检测到有文件发生变化,那么意味着较上一个版本之后对程序进行了修改,修改完成之后,可以当作下一版本进行提交,使用【git add .】将所有文件提交到暂存区,然后再执行【git commit -m "修改信息"】提交到版本库,之后可以使用【git log】查看版本更新记录。【git reflog 】可以查看所有分支的所有操作记录(包括已经被删除的 commit 记录和 reset 的操作)

stash:

  用于将工作区发生变化的所有文件获取临时存储在缓存区,将工作去还原当前版本未操作前的状态,stash还可以将临时存储在缓存区的文件再次拿回到工作区

  • git stash   将当前工作区所有修改过的内容存储到缓存区,将工作区还原到当前版本未修改过的状态

  • git stash list 查看缓存区存储的所有记录

  • git stash clear  清空缓存区

  • git stash pop 将一个记录从缓存区拿到工作区

  • git stash drop 删除指定编号的记录

  • git reset --soft  版本回退并保留本地修改

branch

  称为分支,默认仅有一个名为master的分支。一般开发新功能流程为:开发新功能会在分支dev上进行,开发完毕后在合并到master分支。

  • git branch 分支名称          创建分支

  • git checkout  分支名称      切换分支

  • git branch -m 分支名称     创建并切换到指定分支

  • git branch                          查看所有分支

  • git branch -d 分支名称      删除分支

  • git merge  分支名称          将指定分支合并到当前分支

基于github实现代码托管需要以下步骤

  • 注册github

  • 创建仓库,创建完仓库后会有一个URL代指该仓库

  • git 可以使用该URL进行向源程推送版本信息或获取版本信息

其他补充:

1、git 配置文件有三个

  • 系统配置:/private/etc/gitconfig

  • 用户配置: ~/.gitconfig

  • 项目配置:.git/config

2、用户凭证

为了防止每次操作重复输入用户名和密码,git提供了两种解决方法

  • 密钥:使用【ssh-keygen -t rsa】创建一对密钥,将id_rsa.pub(公钥)拷贝到github中

  • 密码:在配置文件中添加配置

 
 
 参考:https://www.cnblogs.com/wupeiqi/p/7295372.html
 
原文地址:https://www.cnblogs.com/chunqiu666/p/12858535.html