Git 使用

 一 git 作用

  源代码管理

  版本控制

 

为什么要进行源代码管理?

  • 方便多人协同开发

  • 方便版本控制

二 git与svn的区别

  • svn:都是集中控制管理的,也就是有一个中央服务器,大家都把代码提交到中央服务器,

  • Git:最核心的区别Git是分布式的,每一台电脑都是可以是服务器,可以对项目进行管理.

三 git windows 安装

  https://blog.csdn.net/qq_32786873/article/details/80570783

 

四 git 的工作模式

 

  • 1 工作区:就是在你本要电脑磁盘上能看到的目录。
  • 2 暂存区:一般存放在【.git】目录下的index文件(.git/index) 中,所以我们把暂存区有时也叫作索引。
  • 3 工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。git中的head/master是分支,是版本库。

 

五 git 服务搭建

cd进入到自己希望存储代码的目录路径,并创建本地仓库.git
新创建的本地仓库.git是个空仓库

  cd 目录路径
  git init

 

 

 六 配置用户名和邮箱

git config --global user.name 'lisi'
git config --global user.email 'lisi@163.com'

 

七 查看全局配置信息

git config --global --list

git config --list #查看配置信息

 

八 查看仓库状态

git status

git status –s 简约显示

 

九 添加文件到暂存区

  # 添加项目中所有文件
  git add .
  或者
  # 添加指定文件
  git add login.py

 

十 提交到版本库

 git commit -am "版本描述"

 

十一 删除文件

rm -rf filename  #工作区删除文件

git checkout filename #撤销删除

如果要还原在暂存区中删除的文件,必须先执行 git reset head

 

十二 查看日志

git log   或者   git reflog
 
过滤查看日志
  git log –p 
  退出按【q】键
  ctrl+f向下分页
  ctrl+b 向上分页

显示指定日期之后的日志   git log --after  '2018-11-6'
显示指定日期之前的日志   git log --before '2018-11-6'

指定显示指定开发者的日志  git log --author 'lisi'

 

十二 版本回退

 

  git reset --hard 版本号

 

十三 文件状态介绍

针对与文件所处的不同分区,文件所处的状态:**

(1)未追踪, 文件第一次出现在工作区, 版本库还没有存储该文件的状态

(2)已追踪, 只要第一次,git add了文件, 文件就是已追踪

(3)未修改, 文件在工作区未被编辑

(4)已修改, 文件在工作区被修改

(5)未暂存, 文件已修改, 但是没有add到暂存区

(6)已暂存, 已经将修改的文件add到暂存区

(7)未提交, 已暂存的文件, 没有commit提交. 处于暂存区

(8)已提交, 提交到版本库的文件修改,只有commit以后才会有仓库的版本号生成

 

 

十四 远程仓库管理

1 克隆到本地

 

git clone 仓库地址
注意,如果当前目录下出现git仓库同名目录时,会克隆失败。

 

 2 分支管理

# 创建一个新分支

git branch dev

# 切换到所创建的分支

git checkout dev

# 前面两步的简写
# git checkout -b feature1

# 查看当前分支

git branch

有小星星的为当前的所在的分支

# 删除分支

git branch -D dev1

 

十五  提交到远程仓库的一般步骤

  • 1 生成本地版本
git add .
git status
git commit -m '添加项目代码'

 

  • 2 推送到远端
git push origin master  指定的origin 远程仓库,master分支

 

  •  3 查看远程的url
git remote -v

 

注意:如果推送代码,出现以下提示: git pull ....,则表示当前本地的代码和线上的代码版本不同.

1. 把线上的代码执行以下命令,拉取到本地,进行同步
git pull

2. 根据提示,移除多余的冲突的文件,也可以删除.
完成这些步骤以后,再次add,commit,push即可.

 

十六 合并分支

1 为什么需要有分支

  软件并不是所有的功能都实现了才上线,在软件并未完全实现的时候,我们可以吧已经满足基本使用的软件上线,
这就是我们的主分支,我们需要扩展其他的功能,但是不能影响主分支的功能使用,就产生了分支,我们可以在分支上
进行功能的 扩展,同时不影响主分支代码的运行.在分支功能完成并通过测试后,分支可以合并到主分支.完成项目
最终项目的功能的扩展.

 

2 合并分支使用

git checkout master #切换到主分支

git merge feature1 #合并子分支

 

posted @ 2019-03-24 14:08  柳帅  阅读(210)  评论(0编辑  收藏  举报
//替换成自己路径的js文件