Git——从基础到项目搭建

Git——从零到项目搭建

1、集中式与分布式的区别:
Git:是分布式储存管理,客户端存储的是原始代码的完成镜像(实时的)储存到本地,也就是说每一个客户端的代码仓库都是一样的,任何部分的代码出现问题,可以使用其他客户端的代码进行修复;

SVN:是集中化的版本控制系统,大家协同工作但是用的是同一个服务器,一旦服务器出了问题所有人都不能提交更新,历史记录存放位置单一,出现问题可能面临版本丢失;

2、本地仓库与远程仓库的搭建:

本地仓库:创建一个本地文件;
①下载Git并安装;
②$ git init //初始化本地仓库;(出现.git隐藏文件夹,不要擅自改动);
③对本地环境进行配置:
$ git config --global user.name Liu //设置用户;
$ git config --global user.email “你的email地址“
//设置邮箱地址;
设置二者的目的是为了提交代码到远端时,远端知道谁对其进行的操作;
$ git config --list
//检查 本地配置是否设置上;

远程仓库:github;
①注册/登录账号;
②创建项目;
③对SSH配置:
$ ssh-keygen
//查找当前本地仓库路径;
按照路径找到id_rsa.pub文件,打开复制所有内容 => 在github的设置中找到 ‘SSH and GPG keys’,将刚才复制的密钥粘贴即可,随意设置好名称;

本地分支与远程分支建立关联:
$ git remote add origin https://github.com/281257120/gitdemo.git
//建立一个源与 远端的地址 相关联;(打开刚创建的项目,可复制远端地址)origin名字可自定义;

3、Git的使用:

①基本提交操作:
$ git remote rename origin dev
//更改远端仓库名字为dev;
$ git remote -v
//查看远端仓库;
本地创建一个 index.html 文件(该文件也是工作区文件)
$ git status
//查看当前文件下的状态;(会显刚才创建的index.html)
$ git add index.html
//将工作区文件保存到暂存区;
$ git add .
//将工作区所有文件保存到暂存区;
$ git commit -m ‘init’
//将工作区文件提交到本地仓库;
$ git status
//查看状态:显示没有东西可提交,工作区是干净的;
//如果更改index.html文件时,在保存到暂存区时,查看文件状态时会显示 (use “git restore --staged …” to unstage),表示当前暂存区内容与原来的不一样,可以选择版本回退或者提交操作;
$ git push origin master
//将本地仓库文件提交到远端,并且远端会显示index.html;

②相关基础指令:
克隆:
git clone https://github.com/281257120/gitdemo.git
//在本地创建文件夹,该指令会自动复制一份远端的代码;
撤销:
$ git checkout – index.html
//将工作区单内容恢复到离自己最近的暂存区内容;
$ git reset HEAD^
//暂存区文件撤销(不覆盖工作区);
版本回退:
$ git reset --hard 5c8d805
//工作区、暂存区回到制定ID版本;
$ git reset --hard HEAD~1
//工作区、暂存区回到上一个版本;
$ git reset --mixed HEAD^
//本地仓库回到上一个版本(add . 之前的状态);
$ git reset --soft HEAD^
//回到add . 之后的状态;
比较区别:
$ git diff
//比较工作区与暂存区;
$ git diff HEAD
//比较工作区与本地仓库中最近一次commit的内容;
$ git diff – cached
//比较暂存区与本地仓库中最近一次commit的内容;
状态查询:
$ git status
//查看状态:显示没有东西可提交,工作区是干净的;
$ git log
//查看历史操作记录;
$ git reflog
//查看版本历史ID;
分支操作:
$ git branch
//查看分支;
$ git branch dev
//创建dev分支;
$ git checkout dev
//切换到dev分支;在分支的工区进行操作不影响原来分支;
$ git checkout -b dev1
//创建并切换到dev1分支;
$ git merge dev
//合并dev分支内容(切换到master分支后再进行操作);
(合并后可能有冲突,无冲突时会自动合并,有冲突时,在编辑器手动解决冲突代码,然后git add 、git commit -m ‘…’指令合并)
$ git push origin master:dev
//将本地仓库的master分支推到远端dev分支下(远端没有该分支会自动创建该分支);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值