一、了解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. bzoj3862

    题解: 这一道题目和模板有不同的地方就是在于可以修改只有一条边和i相邻 于是我们还要记录与这个点相邻的点有没有改变 代码: #pragma GCC optimize(2) #include<bi ...

  2. Scrum立会报告+燃尽图 07

    作业要求[https://edu.cnblogs.com/campus/nenu/2018fall/homework/2289] 版本控制:https://git.coding.net/liuyy08 ...

  3. GPU编程自学7 —— 常量内存与事件

    深度学习的兴起,使得多线程以及GPU编程逐渐成为算法工程师无法规避的问题.这里主要记录自己的GPU自学历程. 目录 <GPU编程自学1 -- 引言> <GPU编程自学2 -- CUD ...

  4. 关于const 和指针

    这个很久之前就很困扰的问题,现在再理一下: 1,指向const对象的指针 >C++强制要求指向const对象的指针也必须具有const特性!!!也就是不能把一个const对象的地址赋给一个非co ...

  5. Nodejs中npm install 命令的问题

    在使用nodejs的npm包管理工具中碰到过许多个坑,在网上查了很久才解决,现在加以总结. 两种安装方式(本地安装,全局安装) 1.全局安装(npm install -g moduleName/npm ...

  6. Web Server部署架构图

    一.整体架构图 二.框架的瓶颈 上述框架的瓶颈在存储NFS,现在较多的使用的是GFS分布式存储

  7. 使用ksync 加速基于k8s 的应用开发

      ksync 实际上实现了类似 docker docker run -v /foo:/bar 的功能,可以加速我们应用的开发&&运行 安装 mac os curl https://v ...

  8. hasura graphql 模式拼接demo

    实际上通过上边的介绍,模式拼接和hasura 基本没啥关系了,就是使用graphql-bindings 进行schema 合并了 基本demo 这个是官方提供的demo git clone https ...

  9. SSH学习之四 OpenSSH安全

             OpenSSH是Linux/Unix下一款加密通讯软件.同一时候也是我们用来远程控制Linux/Unixserver重要的必装软件. 对于各版本号的Linux及Unix发行版而言,O ...

  10. 洛谷2473(SCOI2008)奖励关

    题目:https://www.luogu.org/problemnew/show/P2473 因为可不可选此物与之前选过什么物品有关,所以状态可以记录成前面已经选过什么物品. 因为选不选此物与它带来的 ...