一、使用git

1、git是什么?

Git是目前世界上最先进的分布式版本控制系统。

  • SVN与Git的最主要的区别?

    • SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就纳闷了。

    • Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

2、git能做什么?

  • 文件版本管理

    作为版本管理系统诞生的Git,最重要的是可以帮助团队进行文件管理,各种源代码和文档等。
  • 代码评审

    代码评审作为软件开发流程中重要的一环,是项目顺利进行提供有效的保障,使用过Github的人对Pull Request应该不会陌生,如果高效进行代码就是另一个问题了。
  • 持续集成

    持续集成作为软件的开发和发布流程中最重要的一环,通过进行单元测试、自动化测试和自动构建发布,可以非常容易发现和改正Bug, 通过钩子(Hook),Git可以和构建工具(如Jenkins)结合构建持续集成环境。

3、git如何使用?

需要从git官网下载,然后进行默认安装即可。

二、 git配置

查看配置信息:        git config --list
设置用户名: git config --global user.name "用户名"
设置用户名邮箱: git config --global user.email "邮箱" 配置ssh: ssh-keygen -t rsa -C 邮箱 (本地一份,远程一份, key中复制本地生成的id_rsa.pub中的内容) 解决git一直输入用户名和密码的问题:
git config --system --unset credential.helper //在git中输入此命令后,每次拉去代码需要重新输入用户名和密码
git config --global credential.helper store //这样再获取代码提示输入用户名和密码,输入之后后续就不需要再次输入了。

三、git常用命令

git初始化                     git init
查看文件是否被git管理 git status
提交到暂存区 git add
提交到本地git仓库 git commit -m "提交描述"
提交到远程仓库 git push
查看git版本日志信息 git log
查看每一次提交的日志信息 git reflog
回退到某个版本 git reset --hard (前六位哈希值)
HEAD^:表示上一个版本
HEAD~100:表示网上100个版本
查看远程仓库地址 git remote -v
删除关联仓库地址 git remote rm origin

四、git分支

//创建和查看分支
查看分支: git branch
创建分支: git branch 分支名
切换分支: git checkout 分支名
既创建又切换: git checkout -b 分支名 //删除分支
删除分支: git branch -d 分支名 (删除本地分支)
删除远程分支: git push orgin -d 分支名 (删除远程分支)
如果要丢弃一个没有被合并过的分支,
可以通过强行删除: git branch -D 分支名。 //分支合并
分支合并: git merge 分支名(在master分支上合并子分支)
查看分支合并图: git log --graph
普通分支合并: git merge --no-ff -m "普通合并" 分支名
(禁用fast forward,能看出曾经做过合并)

五、git操作github上的项目

克隆github仓库:       git clone 仓库路径
提交到远程仓库: git push origin master
线下同步线上项目: git pull origin master

项目常用操作流程

1、本地关联远程仓库:git remote add origin git仓库地址

查看关联远程仓库

git remote -v

2、第一次下载项目(远程-本地):

git clone git 仓库地址

3、第一次发布项目(本地-远程):三步

git add .

git commit -m "描述"

git push -u origin master

4、更新(远程-本地):

git pull

5、提交(本地-远程):三步

git add .

git commit -m "描述"

git push origin master

六、git合并分支到master完整步骤

1、提交分支代码

add . ---> commit ----push

2、切换分支到master

git checkout mater

3、更新mater代码

git pull origin mater

4、执行分支合并

git merge <分支名>

5、提交到远程仓库

git push origin master

git操作常用命令的更多相关文章

  1. Git 操作常用命令

    Git使用 1. git pull    更新服务器代码到本地a). git pull origin master是将origin这个版本库的代码更新到本地的master主分支 2. git push ...

  2. git log 常用命令及技巧

    git log常用命令以及技巧 1.git log 如果不带任何参数,它会列出所有历史记录,最近的排在最上方,显示提交对象的哈希值,作者.提交日期.和提交说明.如果记录过多,则按Page Up.Pag ...

  3. Git 基础 —— 常用命令

    Git 基础学习系列 Git 基础 -- 安装 配置 别名 对象 Git 基础 -- 常用命令 Git 基础 -- 常见使用场景 Git基础 -- Github 的使用 git init 创建 Git ...

  4. git的常用命令。。

    git的常用命令.. git help <command>  显示command的help git show  显示某次提交的内容 git show $id git co -- <f ...

  5. Git的常用命令记录

    Git的常用命令记录 1.与远程仓库建立连接,即关联一个远程库 git remote add origin git@server-name:path/repo-name.git; 2.查看当前分支  ...

  6. git/repo常用命令

    Git作为广受欢迎的一款版本控制工具,它该如何通过命令行使用呢?本文为你揭晓浓缩精华精华版:git常用命令一览,含部分repo操作. 代码下载 repo init -- -->初始化需要下载的分 ...

  7. GIT 版本控制常用命令学习汇总

    GIT 版本控制常用命令汇总 git version 查看当前git版本信息 git help 获取全部命令帮助信息 git help <command> 获取指定命令帮助信息 git c ...

  8. Git基本常用命令

    Git基本常用命令如下: mkdir: XX (创建一个空目录 XX指目录名) pwd: 显示当前目录的路径. git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件. git ...

  9. MySQL数据库操作常用命令

    MySQL数据库操作常用命令DOS连接数据库1.安装MySQL配置好环境2.运行cmd命令net start mysql3.找到mysql文件根目录输入命令mysql -h localhost -u ...

随机推荐

  1. mip-link 组件功能升级说明

    背景描述 某个页面被多少页面引用(在其他页面上有指向这个页面的 a 标签),是搜索引擎判断这个页面价值的其中一个因子.这里的搜索引擎不只是指百度,还包括国内外其他的搜索引擎. MIP 在最初设计 MI ...

  2. python接口自动化(十八)--重定向(Location)(详解)

    简介 在实际工作中,有些接口请求完以后会重定向到别的url,而你却需要重定向前的url.URL主要是针对虚拟空间而言,因为不是自己独立管理的服务器,所以无法正常进行常规的操作.但是自己又不希望通过主域 ...

  3. this指向和apply,call,bind三者的区别

    一.前言 this指向,apply,call,bind的区别是一个经典的面试问题,同时在项目中会经常使用到的原生的js方法.同时也是ES5中的众多坑的一个.ES6中可能会极大的避免了this产生的错误 ...

  4. Java GC性能优化实战

    GC优化是必要的吗? 或者更准确地说,GC优化对Java基础服务来说是必要的吗?答案是否定的,事实上GC优化对Java基础服务来说在有些场合是可以省去的,但前提是这些正在运行的Java系统,必须包含以 ...

  5. Centos7 nginx 虚拟主机、反向代理服务器及负载均衡,多台主机分离php-fpm实验,之强化篇,部署zabbix为例

    一.简介 1.由于zabbix是php得,所有lnmp环境这里测试用的上一个实验环境,请查看https://www.cnblogs.com/zhangxingeng/p/10330735.html : ...

  6. ajax调用WebAPI添加数据

    //获取账号名 var Name = document.getElementById("Text1").value;//获取密码 var Pass = document.getEl ...

  7. windows server 2012 r2打造工作站链接 和 RTSS画面防止撕裂方法(包括笔记本独显撕裂,视频撕裂等)

    听说 windows server 2008 基于windows vista ,windows server 2008 R2基于win7 , windows server 2012 基于windows ...

  8. 如何用RSS订阅?

    本文由云+社区发表 摘要:我们常常会有订阅别人文章的需求,有更新的时候希望能有提醒的功能,RSS就是这样一个订阅的方式.很多网站上看到RSS的入口,点进去以后总是显示一堆的XML代码,我们来看看怎么使 ...

  9. npm 使用 taobao 的镜像后,无法 login & publish

    使用 npm adduser,添加用户之后,没有异常消息,然后使用 npm publish 发布,却报错: 401 原来是 npm 使用 taobao 的镜像后,需要指定 --registry htt ...

  10. Java的Random类详解

    Random类专门用于生成一个伪随机数,它有两个构造器:一个构造器使用默认的种子(以当前时间作为种子),另一个构造器需要程序员显示传入一个long型整数的种子. Random类比Math类的rando ...