一、了解git
1.2、git是分布式版本控制系统,svn是集中式版本控制系统(必须要联网),具体区别[评论下面也很精彩]
二、安装配置git
2.1、下载安装:https://git-scm.com/downloads 一路默认next
2.2、安装完成以后打开Git Bash,弹窗命令行窗口。设置一下用户名和邮箱
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
 
三、创建版本库
3.1、在本地创建一个文件目录,注意:避免产生麻烦目录文件名不要有中文和特殊符号。我的在E:\gitRepository
3.2、在Git Bash中进入版本库目录,输入git init。创建版本库成功!
 
3.3、将文件添加到版本库
3.3.1、在本地创建一个文件newTxt【内容随意】,放到3.3中穿件的版本库中。
3.3.2、git add 文件名,告诉git我要将文件放到版本库里,其实是放到了上图的暂存区
3.3.3、git commit -m “你的说明”,将暂存区的文件提交到分支里,真正的放到了版本库
四、基础命令
 
4.1、查看当前版本库的状态------ git status
当前状态是修改了还没有做提交,没有git add 也没有git commit
 
4.2、查看修改了哪些内容----git diff 文件名
4.3、查看提交历史---git log
4.4、版本回退 --- git reset --hard HEAD^(HEAD当前版本,HEAD^上个版本,HEAD^^上上版本)
4.5、撤销修改
4.5.1、git checkout --文件名(①在工作区修改,文件还未add到暂存区,可撤销到修改前②已经add到暂存区,又做了修改,可以撤销到和暂存区一样)
4.5.2、已经add到暂存区的文件想要撤销到工作区
先 git reset HEAD 文件名【将暂存区的文件修改回退到工作区】再 git checkout --文件名【将工作区的文件修改撤销】
4.6、删除文件
4.6.1、工作区的文件删除了,版本库中的提交也要删除保持一致
先git rm 文件名 然后再git commit -m “说明”
 
 
4.6.2、工作区文件删除了,版本库中还有。工作区文件是误删的,这时候可以恢复工作区中的文件。
git checkout --文件名
五、远程仓库
5.1、创建ssh key。
在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
本地找不到的可以在用户主目录下打开git base 输入:$ ssh-keygen -t rsa -C "youremail@example.com"
 
5.2、将ssh公钥添加到github上
登陆GitHub,打开“Account settings”,“SSH Keys”页面:然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:
 
GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。
5.3、远程库与本地库创建连接
在本地的仓库下面运行:
git remote add origin git@github.com:github账户/远程库名.git
【要是创建的连接错了,有三种解决方法】
①修改命令:git remote origin set -url 【url】
②先删除再添加:git remote rm origin
git remote add origin 【url】
③直接找到本地库 .git/config 文件,文本编辑进行修改
5.4、将本地库内容推送到远程库上
git push -u origin master
5.5、克隆远程库
git clone git@github.com:远程库名/[xxx].git
六、分支管理
你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作,而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样,既安全,又不影响别人工作。
6.1、查看当前分支---git brance
6.2、切换分支 ---git checkout 分支名
6.3、创建分支---git brance 分支名
6.4、创建+切换分支---git checkout -b 分支名 == git brance 分支名 和 git checkout 分支名
版本回退的时候HEAD指向每次提交,其实HEAD指向的是master
 
创建并且切换到新的分支---git checkout -b 分支名 例如: git checkout -b dev
加上-b是指创建并切换到新分支,相当于执行两条命令:git brance 分支名 和 git checkout 分支名
6.5、将当前分支合并到master---git merge 分支名
6.6、删除分支---git branch -d dev
 
 
 
 

git的基础操作-入门的更多相关文章

  1. Mac下Git的基础操作

    目前最火的版本控制软件是Git了吧,今天简单梳理一下Mac下Git的基础操作~~ 一.什么是Git Git是一个分布式代码管理工具,用于敏捷的处理或大或小的项目,类似的工具还有svn. 基于Git的快 ...

  2. 『现学现忘』Git基础 — 13、Git的基础操作

    目录 1.Git最基础的使用方式 (1)初始化本地版本库 (2)查看文件的状态 (3)把文件添加到暂存区 (4)把暂存区的内容提交到本地版本库 2.总结本文用到的Git命令 1.Git最基础的使用方式 ...

  3. git 的 基础操作及使用

    /* git svn版本控制器 */ /*git把文件对应的储存空间分为三个区: 1.工作区 2.缓存区 3.历史区 直接操作文件,不做add时,咱们是在工作区做的修改 右键 git bash her ...

  4. git零基础快速入门实战,重点讲解,在实际生产中整合idea对版本、分支的管理等

    1.什么是版本管理 (多人协作)项目中常见的问题: 代码放在什么地方 ?? 同步(到服务器),代码的冲突问题 ?? 服务器访问权限问题 ?? (代码)服务器内容修改的细节 ?? 项目版本的发布 ?? ...

  5. git最基础操作一

    1. 从远端克隆:git clone -b 克隆的分支 git的地址( eg:git clone -b master https://gitee.com/test/test.git ) 2.提交修改的 ...

  6. 【课件】git零基础快速入门实战--重点讲解,在实际生产中整合idea对版本、分支的管理等

    1.git简单描述 git是重要的版本管理工具,几乎每个码农都有自己的git账号管理自己的代码,同时很多公司也是用git管理公司的代码, 因此掌握git在实际生产中的常规使用非常重要. 2.git学习 ...

  7. git内容补充-Git零基础快速入门-苏玲

    https://git-scm.com/book/zh/v2 git历史 集中式版本控制管理:cvs.svn 分布式版本控制管理:git 基本命令 git config --list --global ...

  8. Git基础操作

    配置秘钥 1.检查本机有没有秘钥 检查~/.ssh看看是否有名为d_rsa.pub和id_dsa.pub的2个文件. $ ~/.sshbash: /c/Users/lenovo/.ssh: Is a ...

  9. Python文件基础操作(IO入门1)

    转载请标明出处: http://www.cnblogs.com/why168888/p/6422270.html 本文出自:[Edwin博客园] Python文件基础操作(IO入门1) 1. pyth ...

随机推荐

  1. Lucene Scoring 评分机制

    原文出处:http://blog.chenlb.com/2009/08/lucene-scoring-architecture.html Lucene 评分体系/机制(lucene scoring)是 ...

  2. 关于CMD/DOS中的短文件名规则

    最近在制作一个批处理的过程中发现一个很郁闷的问题,就是有些时候搜索到的结果不是我们想要的

  3. Jmeter-Critical Section Controller(临界区控制器)

    The Critical Section Controller ensures that its children elements (samplers/controllers, etc.) will ...

  4. iOS NSLog去掉时间戳及其他输出样式

    1.一般项目中我的NSLog会在Prefix.pch文件添加如下代码,已保证在非调试状态下NSLog不工作   1 2 3 4 5 #ifdef DEBUG #define NSLog(...) NS ...

  5. Objective-C教程备忘单

    终极版本的Objective-C教程备忘单帮助你进行iOS开发. 想开始创建你的第一个iOS应用程序么?那么看一下这篇很棒的教程吧:Create your first iOS 7 Hello Worl ...

  6. LTE-Advanced(4G)主要技术学习:CA、CoMp、HetNet

    CA:Carrier Aggregation,载波聚合 从LTE到LTE-Advanced演进过程中,更宽频谱的需求是影响演进的最重要因素,为此3GPP标准提出了载波聚合技术.简单地说,它可以将多个载 ...

  7. http的报文结构和状态码的含义

    HTTP响应报文解剖 响应报文结构 HTTP的响应报文也由三部分组成(响应行+响应头+响应体): 以下是一个实际的HTTP响应报文: ①报文协议及版本: ②状态码及状态描述: ③响应报文头,也是由多个 ...

  8. Tomcat调优总结(Tomcat自身优化、Linux内核优化、JVM优化)

    Tomcat自身的调优是针对conf/server.xml中的几个参数的调优设置.首先是对这几个参数的含义要有深刻而清楚的理解.以tomcat8.5为例,讲解参数. 同时也得认识到一点,tomcat调 ...

  9. java之美妙的注解

    注解 一.认识注解 先看百度百科对java注解的解释: 定义:注解(Annotation),也叫元数据.一种代码级别的说明.它是JDK1.5及以后版本引入的一个特性,与类.接口.枚举是在同一个层次.它 ...

  10. wpf 客户端【JDAgent桌面助手】开发详解(二)桌面宠物制作详解

    目录区域: wpf 客户端[JDAgent桌面助手]业余开发的终于完工了..晒晒截 wpf 客户端[JDAgent桌面助手]开发详解-开篇 wpf 客户端[JDAgent桌面助手]开发详解(一)主窗口 ...