学习笔记-Git命令入门

1.git简介

  • git是一个分布式版本控制软件,最初由(Linus Torvalds)创作

2.git的优势

  • Git 允许多个远程仓库存在,使得这样一种工作流成为可能:每个开发者拥有自己仓库的写权限和其他所有人仓库的读权限。 这种情形下通常会有个代表`‘官方’'项目的权威的仓库。 要为这个项目做贡献,你需要从该项目克隆出一个自己的公开仓库,然后将自己的修改推送上去。 接着你可以请求官方仓库的维护者拉取更新合并到主项目。 维护者可以将你的仓库作为远程仓库添加进来,在本地测试你的变更,将其合并入他们的分支并推送回官方仓库。

3.git的安装

  • 下载git
    到git官网上下载,自行选择合适系统的:https://git-scm.com/
    如果是win版本的,直接按默认安装即可
  • linux安装
yum install git
yum install
**编译git源码安装**
到下面的网站下载合适的版本
https://mirrors.edge.kernel.org/pub/software/scm/git/
安装git的依赖项
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
yum install  gcc perl-ExtUtils-MakeMaker
移除已经安装的git
yum remove git
cd git 解压目录
预编译git
./configure --prefix=/usr/local/git_2.9.5
编译并安装git
make && make install
将git的脚本软连接到/usr/bin/ 目录下
ln -s /usr/local/git_2.9.5/bin/* /usr/bin/

4.git基本命令

git 本地操作
git --help
调出Git的帮助文档
git +命令 --help
查看某个具体命令的帮助文档
git --version
查看git的版本
git init
生成空的本地仓库
git add
将文件添加到暂存区

初次commit之前,需要配置用户邮箱及用户名,使用以下命令:
git config --global user.email "[email protected]"
git config --global user.name "Your Name"
git commit
将暂存区里的文件提交到本地仓库
git status
用于查看git的状态
git rm
用于git文件的删除操作
如果只是 git rm --cache 仅删除暂存区里的文件
如果不加--cache 会删除工作区里的文件 并提交到暂存区
git checkout
直接加文件名 从暂存区将文件恢复到工作区,如果工作区已经有该文件,则会选择覆盖
加了【分支名】 +文件名 则表示从分支名为所写的分支名中拉取文件 并覆盖工作区里的文件

5.git分支

  • 5.1什么是分支
    软件项目中启动一套单独的开发线的方法
  • 5.2为什么使用git
  • 1.可以很好的避免版本兼容开发的问题,避免不同版本之间的相互影响
  • 2.封装一个开发阶段
  • 3.解决bug的时候新建分支,用于对该bug的研究
  • 5.2分支相关命令
    git branch 分支名(创建分支)
    git branch
    不加任何参数,列出当前所有的分支,分支前面有*号,代表该分支为当前所在分支
    创建分支的时候,分支名不用使用特殊符号
    git branch -d 分支名
    不能删除当前所在的分支
    git checkout -b 分支名创建并切换到分支
    git branch -m 旧分支名 新分支名(修改分支名)
    git checkout 分支名 ( 切换分支)
    git checkout -f强制切换分支,所有的更改会被丢弃

6.git log

git log -数字 表示查看最近几次的提交
git log -p -2 显示最近两次提交的不同点
git log --author 查看具体某个作者的提交
git log --online 输出简要的信息
git log --graph 以一个简单的线串联起整个提交历史
git log 输出信息的定制

7.git diff

git diff 比较工作区和暂存区得差异
git diff --cached 比较暂存区和仓库的差异
git diff 分支名 比较当前分支与指定分支的差异
git diff 分支名1 分支名2比较两个分支得差异

8.更改提交

git reset HEAD 文件名移出提交到暂存区的文件
git reset HEAD^去除上一次得提交
git reset --soft HEAD^

你可能感兴趣的:(学习笔记-Git命令入门)