Git

Git是什么

Git是一个比较流行的分布式版本控制器,与SVN很相似都适用于程序员日常开发中,对代码版本进行维护。

Git最主要的特点

Git与SVN比较而言,最大的优点就是Git分布式储存,可以有效降低单点故障所带来的影响。每台服务器上都有相对完整的代码,即使是某一台服务器挂掉,也只是损失了这台服务器上所独有的一小部分代码,对整体影响不算太大。

在windows上安装

个人建议在360软件管家上直接搜索git会出现64位的Git以及对应的TortoiseGit和中文包,根据提示安装

TortoiseGit是一个开放的,为的git版本控制系统的源客户端。像一个普通的文件服务器,除了会记得您有史以来的文件和目录的每一个变化外,还可以恢复您的文件的旧版本,并研究如何以及何时改变了历史数据,谁改变了它。

Git的工作流

  • 在克隆 Git 资源作为工作目录。
  • 克隆的资源上添加或修改文件。
  • 如果其他人修改了,你可以更新资源。
  • 在提交前查看修改。
  • 提交修改。
  • 在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。

Git 仓库和分支的概念

Git 仓库很容易理解就是存放文件的一块磁盘空间. git 里面有两个仓库, 一个叫本地仓库, 另一个就是远程仓库, 本地仓库存放的是本地的文件以及从远程仓库同步下来的镜像, 远程仓库就是保存本地仓库的镜像. 分支是什么呢? 分支就是从某个提交对象往回看的历

史.

Git分区

我们通过git init命令创建的Git仓库里面包含了两个部分,版本库(Git仓库里的.git隐藏文件)和工作区(隐藏文件外的文件,也就是我们可以看到的可以操作的文件)。

在版本库中标记为 "index" 的区域是暂存区(stage, index),标记为 "master" 的是 master 分支所代表的目录树。(相当是文件的元数据)

object是对象库,里面包含了创建的各种对象及内容。(可以理解为实际的文件内容)

Git工作流

Git的常用基本命令

cd: 切换目录,比如 cd e: 切换到e盘 

mkdir: 创建一个文件夹 

pwd: 查看当前目录 

git init: 初始化一个本地库

git config --global user.name "name": 设置用户名

git config --global user.email "email@example.com": 设置邮箱

git add: 添加文件到缓存区 

git commit: 提交文件到分支,-m 添加说明 

git status: 查看文件是否有修改 

git diff: 对比文件修改内容 

git log: 查看提交历史 

git reset --hard HEAD^: 回到上一个版本 

git reset --hard xxx: 回到指定版本,版本号可以不写全 git reflog: 查看历史提交版本 

git rm: 删除版本库文件 

rm: 删除本地文件 

ls: 查看文件目录

创建GitHub远程连接

  1. 创建SSH Key

    $ ssh-keygen -t rsa -C "your email" 在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub

  2. 添加公钥

    登陆GitHub,打开“Account settings”,“SSH Keys”页面。点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容。点“Add Key”,你就应该看到已经添加的Key

  3. 验证是否成功

    $ ssh -T git@github.com

    Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.

    创建远程版本库

添加远程库

  1. 登陆GitHub,在右上角找到“Create a new repo”按钮,创建一个新的仓库
  2. 在Repositoryname填入learngit,其他保持默认设置,点击“Createrepository” 按钮,就成功地创建了一个新的Git仓库
  3. $ git remote add origin git@github:,添加远程库,名 字叫做origin
  4. $ git push -u origin master,把本地库推送到远程库上。由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令
  5. 以后提交只用写,$ git push origin master
  6. 克隆远程库,$gitclonegit@github.com:.git

五分支管理

1、 创建dev分支,切换到dev分支

$ git checkout -b dev

(git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:

$ git branch dev

$ git checkout dev)

Switched to a new branch 'dev'

2、 查看当前分支

$ git branch

* dev

master

3、 修改readme.txt,add、commit

4、 切换回master

$ git checkout master

5、 合并分支

$ git merge dev

6、 删除分支

$ git branch -d dev

7、 解决冲突找到冲突文件,去掉<<<<< =====

$ git add 冲突文件名字

$ git commit -m ‘注释’

posted @ 2020-08-02 21:31  DemonQin  阅读(90)  评论(0编辑  收藏  举报