Git
Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
Git 安装
Git 各平台安装包下载地址为:http://git-scm.com/downloads
Windows 平台上安装
在 Windows 平台上安装 Git 同样轻松,有个叫做 msysGit 的项目提供了安装包,可以到 GitHub 的页面上下载 exe 安装文件并运行:
安装包下载地址:https://gitforwindows.org/
完成安装之后,就可以使用命令行的 git 工具(已经自带了 ssh 客户端)了,另外还有一个图形界面的 Git 项目管理工具。
在开始菜单里找到"Git"->“Git Bash”,会弹出 Git 命令窗口,你可以在该窗口进行 Git 操作。
Git 工作流程
- 克隆 Git 资源作为工作目录。
- 在克隆的资源上添加或修改文件。
- 如果其他人修改了,你可以更新资源。
- 在提交前查看修改。
- 提交修改。
- 在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。
Git 工作区、暂存区和版本库
- 工作区: 就是你在电脑里能看到的目录。
- 暂存区: 英文叫stage, 或index。一般存放在 “.git目录下” 下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。
- 版本库: 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。
Git 创建本地仓库
安装好后首次使用需要新进行全局配置
在左面空白出点击右键,点击“Git Bash Here”以打开命令行窗口
$ git config --global user.name "用户名"
$ git config --global user.email "邮箱地址"
验证是否成功
$ git config --global user
// 会自动输出用户名
$ git config --global user
// 会自动输出邮箱地址
创建仓库
-
首先创建一个文件夹并进入
mkdir demo //创建文件夹 cd demo //进入
-
使用当前目录作为Git仓库,我们只需使它初始化。
git init
该命令执行完后会在当前目录生成一个 .git 目录。
或者使用指定目录作为Git仓库
git init newrepo
初始化后,会在 newrepo 目录下会出现一个名为 .git 的目录,所有 Git 需要的数据和资源都存放在这个目录中。
如果当前目录下有几个文件想要纳入版本控制,需要先用 git add 命令告诉 Git 开始对这些文件进行跟踪,然后提交:
$ git status //查看当前状态
$ git add . //添加当前目录到缓存区
$ git add 文件名 //添加一个文件
$ git commit -m '注释内容' //提交至版本库
Git 基本操作
如果你需要与他人合作一个项目,或者想要复制一个项目,看看代码,你就可以克隆那个项目。 执行命令:
git clone [url]
版本回退
-
查看版本,确定需要回到的时刻点
git log // 查看提交历史 git log --pretty=oneline //查看历史记录的简洁的版本,,推荐使用 // 只能显示当前或之前的版本号 git reflog //历史操作查看
-
回退操作
git rest --hard 版本号
Git 远程仓库创建(Github)
基于HTTPS协议
在所在项目目录右键 打开“Git Bash Here”
git clone [url]
cd 仓库名
git add .
git commit -m "初始化文件"
git push
//这时会报错
找到.git(默认隐藏) 文件夹下的config文件,打开后
保存后
git push
创建成功
提醒:
在每天工作的第一件事就是先git pull 拉取线上的最新版本;每天下班前要做的就是 git push,将本地代码提交到线上仓库。
基于SSH协议
生成公私钥
ssh-keygen -t rsa -C "注册邮箱"
然后一路 回车
找到后打开并复制
回到 github 上,进入 Account => Settings(账户配置)。左边选择 SSH and GPG keys,然后点击 New SSH key 按钮,title 设置标题,可以随便填,粘贴在你电脑上生成的 key。
为了验证是否成功,输入以下命令:
$ ssh -T git@github.com
Hi tianqixin! You've successfully authenticated, but GitHub does not provide shell access.
以下命令说明我们已成功连上 Github。
后续操作和之前类似,缺少的只是不需要 健全 用户名和密码, 如果使用HTTPS协议 每次都需要配置,所以后期推荐使用SSH协议
Git Gitee(码云)
创建仓库后,码云已经告诉我们如何操作,按着操作即可
创建仓库方式同GitHub 类似
也可以从github导入仓库
分支管理
几乎每一种版本控制系统都以某种形式支持分支。使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作。
有人把 Git 的分支模型称为必杀技特性,而正是因为它,将 Git 从版本控制系统家族里区分出来。
分支相关命令
查看分支: git branch
创建分支: git branch 分支名
切换分支: git checkout 分支名
合并分支: git merge
删除分支: git branch -d 分支名