Git简单教程
该笔记总结廖雪峰Git教程, 参考网站: https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
一. 简介
二. Git install
$ git config --global user.name "Your name" $ git config --global user.email "email@example.com"
三. 创建repository
$ mkdir git #创建git目录 $ cd git $ git init #创建repository
通过以下命令可以看到git目录中有隐藏的.git文件
$ ls -a
把文件添加入repository
# Snapshots the file in preparation for versioning $ git add [file] # Records file snapshots permanently in version history $ git commit -m "[descriptive message]"
四. 版本控制
一些简单的命令:
# Lists all new or modified files to be committed $ git status # Shows file differences not yet staged $ git diff # Lists version history for the current branch $ git log $ git log --pretty=oneline
版本回退:
$ git reset --hard HEAD^
版本回退后, 新版本会消失, 如果想恢复至新版本必须知道新版本的ID号, 之前 git log 会打印出新版本的ID号.
# 版本号没必要写全,前几位就可以了,Git会自动去找。当然也不能只写前一两位,因为Git可能会找到多个版本号,就无法确定是哪一个了。 $ git reset --hard ID
Git概念理解:
撤销修改:
$ git checkout -- fileName
二: 文件已经 git add, 提交至stage中, 此时需要首先将文件从stage中撤回至work directory中, r然后成为一的情况.
$ git reset HEAD fileName
删除文件:
# Deletes the file from the working directory and stages the deletion $ git rm [file] $ git commit -m "message"
如果误删想要回复文件, 使用如下命令:
$ git checkout -- [file]
五. 远程仓库
$ ssh-keygen -t rsa -C "youremail@example.com"
如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
$ git remote add origin git@github.com:[github_ID_name]/[repository_name].git
添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。
$ git push -u origin master
从现在起,只要本地作了提交,就可以通过命令, 把本地master分支的最新修改推送至GitHub:
$ git push origin master
第一次链接时会出现警告, 该警告关于SSH警告, 直接Yes即可.
删除远程库内容:
$ git rm [filename] #删除本地文件 $ git add . $ git commit -m "clear" $ git push origin master
$ git clone git@github.com:***/***.git
分支管理
简单的命令:
#表示创建并切换 $ git checkout -b dev #or $ git branch dev $ git checkout dev # Lists all local branches in the current repository $ git branch # Switches to the specified branch and updates the working directory $ git checkout master # Combines the specified branch’s history into the current branch $ git merge dev # Deletes the specified branch $ git branch -d [branch-name] # 分支合并图 $ git log --graph # 禁用Fast forward模式, merge时生成新的commit $ git merge --no-ff -m "merge with no-ff" [branch-name] # Temporarily stores all modified tracked files $ git stash # Lists all stashed changesets $ git stash list # 强行删除 $ git branch -D feature-vulcan # 查看远程库的信息, 加-v会将信息详细化 $ git remote
合并方式:
分支策略:
Bug分支:
多人合作:
七. 标签管理
简单命令:
# 打一个新标签, 加ID号可为以前的增加标签 $ git tag <name> [commit ID] # 查看标签 $ git tag # 查看标签信息 $ git show <tagname> # 删除标签 $ git tag -d <tagname> # 推送某个标签到远程,使用命令 $ git push origin <tagname> # 一次性推送全部尚未推送到远程的本地标签 $ git push origin --tags # 删除远程标签 $ git tag -d <tagname> $ git push origin :refs/tags/<tagname> 转载清注明出处, O(∩_∩)O谢谢!
Git简单教程的更多相关文章
- git 简单教程更新
0.初始化 $ git config --global user.name "xxx" $ git config --global user.email "xxx@gma ...
- Git和Github简单教程
原文链接:Git和Github简单教程 网络上关于Git和GitHub的教程不少,但是这些教程有的命令太少不够用,有的命令太多,使得初期学习的时候需要额外花不少时间在一些当前用不到的命令上. 这篇文章 ...
- Git和Github简单教程(收藏)
原文链接:Git和Github简单教程 目录: 零.Git是什么 一.Git的主要功能:版本控制 二.概览 三.Git for Windows软件安装 四.本地Git的使用 五.Github与Git的 ...
- Git和Github简单教程【转】
转自:https://www.cnblogs.com/schaepher/p/5561193.html#clone 原文链接:Git和Github简单教程 网络上关于Git和GitHub的教程不少,但 ...
- 转:Git和Github简单教程
转自:https://www.cnblogs.com/schaepher/p/5561193.html Git和Github简单教程 原文链接:Git和Github简单教程 网络上关于Git和Gi ...
- Git简易教程-安装及简单使用
Git是一种版本控制器,在项目开发中可以用来托管代码 一.下载安装Git 1. Git下载 地址:https://git-scm.com/download/win 2. 安装 检验是否安装成功 电脑桌 ...
- Git使用教程【转】
Git使用教程 一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 二:SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是 ...
- Git 使用教程
Git 使用教程 更详细请参考:廖雪峰的官方网站 - Git教程 1. 安装Git客户端软件 Git for Windows http://msysgit.github.io/ 2. 创建版本库 两点 ...
- Git版本控制教程
Git 版本控制入门 不了解Git请查看权威Git书籍 ProGit(中文版). 一份很好的 Git 入门教程,点击这里查看. Git客户端下载地址: 官方Git - TortoiseGit - So ...
随机推荐
- linux查看命令总结
通过命令+文件名查看内容.如下命令可以查看.1, cat :由第一行开始显示文件内容:2,tac:从最后一行开始显示,可以看出tac与cat字母顺序相反:3,nl:显示的时候输出行号:4,more:一 ...
- DataSource是什么
public interface DataSource 该工厂用于提供到此 DataSource 对象表示的物理数据源的连接.作为 DriverManager(二者区别:http://tobylxy. ...
- QQ空间g_tk、bkn加密参数算法
g_tk是腾讯在QQ空间这一领域使用的密文,有写数据包或者url参数中需要加入你计算出的g_tk才能成功! 下面是通过浏览器抓包工具抓取 访问该js内容找出 QZONE.FrontPage.getAC ...
- cocos2d0基础篇笔记二
1.菜单的使用: CCMenuItemimage*image=CCMenuItemImage*create("xxx.png", "xxx,png", &quo ...
- Android中Environment与StatFs获取系统/SDCard存储空间大小
近期想起Android开发的知识.好久没有使用了,都忘得几乎相同了,今天查看了一会资料往回捡捡,顺便写下来帮助一下须要的同学. 首先讲述一下Environment与StatFs这两个类,然后介绍它们的 ...
- ok6410[001] Ubuntu 16.04[64bit]嵌入式交叉编译环境arm-linux-gcc搭建过程图解
开发PC:Ubuntu16.04.1 开发板:OK6410[飞凌公司出品] 目标:通过GPIO点亮LED ----------------------------------------------- ...
- OcelotAPI 简单使用—服务发现、流控
我这人比较懒 直接上配置文件的图 其中serviceName是服务名称, LoadBalancer是负载均衡策略. 对于流控我为了做测试写的1s 限制5次请求. 剩下的看名字就OK了. 要使用服务发现 ...
- 03 svn 权限与用户管理
一:权限管理 (1)svn仓库各个作用 svnserve.conf [svn仓库的配置文件] password [svn仓库账号和密码配置文件] authz [svn仓库的访问权限] (2)访问权限 ...
- iOS中从零開始使用protobuf
让我们一起打开以下这个链接 https://github.com/alexeyxo/protobuf-objc 在github上有protobuf-objc,当中的readme能够教会我们安装prot ...
- 【BZOJ4476】[Jsoi2015]送礼物 分数规划+RMQ
[BZOJ4476][Jsoi2015]送礼物 Description JYY和CX的结婚纪念日即将到来,JYY来到萌萌开的礼品店选购纪念礼物.萌萌的礼品店很神奇,所有出售的礼物都按照特定的顺序都排成 ...