git 使用入门
MY UBUNTU
安装:
sudo apt-get install git
选定的目录为git的工作区。该目录下的任何改动,git都会记录为工作区的修改,而不会提交至版本库(需add和commit操作)。
提交至git的文件必须在该工作目录或者其子目录。
git版本库包括stage(暂存区)和master(git默认创建的一个分支)。
文件"add"操作只是将文件添加到git的暂存区,经"commit" 才将文件的更改提交至master。
关于文件版本:
每个文件都有一个指针(HEAD)指向当前版本,当需要修改版本时,只需更改指针即可。(也就是版本id)
创建仓库:
查看当前目录:pwd
创建git仓库: git init // 将当前目录加入到git仓库中
添加和更新文件:
git add <文件名>
git commit -m <"操作描述"> // -a 将文件版本添加并更新至git
删除文件:
git rm <文件名>
git commit -m <"操作描述">
查看工作区状态:
git status
查看修改的内容:
git diff <文件名>
查看提交历史:
git log [--pretty = online] // 查看最近更改的日志
查看命令历史:
git reflog
选择历史版本:
git reset --hard HEAD^ // 回到上一个版本 HEAD~10 回到上10个版本
回到最新版本:
git reset --hard <最新版本id> // id 是 一个hash数,只需输入前几个数,git会自动寻找相应的版本
// 若id在历史版本中查看不到,则查看历史命令,其中记录了每次操作的文件版本id
撤销工作区的修改:
git checkout -- <文件名> // 将工作区的文件更新为版本库里的最新版本(也可用于恢复文件至工作区)
撤销暂存区的修改:
git reset HEAD <文件名> // 将修改撤销到工作区
创建远程库:
git remote add origin git@github.com:April53/python.git
推送本地库到远程库:
git push -u origin master // 本地分支master 远程库默认名 origin
// 由于远程库是空的,我们第一次推送master
分支时,加上了-u
参数,Git不但会把本地的master
分支内容推送的远程新的
git push origin master //master
分支,还会把本地的master
分支和远程的master
分支关联起来,在以后的推送或者拉取时就可以简化命令。
从远程库克隆到本地:
git clone git@github.com:April53/python.git
分支操作:
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge [--no-ff
] <name> // --no--ff 记录合并历史
删除分支:
git branch -d <name>
bug分支:
git stash // 存储工作分支状态
git 使用入门的更多相关文章
- GIT 从入门到放弃大整理
跟着廖雪峰学 GIT http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 GUI f ...
- 第三章 Git的入门 - 读书笔记
Android驱动月考3 第三章 Git的入门 - 读书笔记 对于Github,这是全世界最大的开源平台,你可以把你做的项目在这里开源,把你发现的一些新技术在这里开源,向全世界的开发者们分享,大家都彼 ...
- git简单入门
git简单入门 标签(空格分隔): git git是作为程序员必备的技能.在这里就不去介绍版本控制和git产生的历史了. 首先看看常用的git命令: git init git add git comm ...
- Android系统移植与驱动开发--第三章 Git使用入门及在学习中有感
第三章 Git使用入门 使用Git的目的是减少各种版本的Linux的压缩大小,提供源代码在Linux上进行编译. 在这一个章节中,其实就是关键步骤的操作,虽然Git与我们学习的android没有很大的 ...
- 让 Python 带你进入开源的世界——Git 从入门到与他人协作开发
让 Python 带你进入开源的世界--Git 从入门到与他人协作开发 我认为开源社区中有很多优秀的资源,并且可以帮助进阶中的程序员提高编程能力和水平.所以,我发起了<HelloGitHub&g ...
- Git快速入门进阶篇
本文接着Git快速入门篇,继续探讨Git在管理项目中的一些应用. 远程仓库的使用 查看远程仓库 查看你已经配置的远程仓库服务器,可以运行 git remote 命令.指定选项 -v,会显示需要读写远程 ...
- git快速入门 push/clone/reset/merge/切换分支全都有
本文介绍git快速入门,从安装/创建init / 发布push/版本回退reset / branch分支切换/合并分支merge 这些基本的操作都有涉及,方便新人快速入手,有需要的朋友mark一下.首 ...
- Git 快速入门--Git 基础
Git 快速入门 Git 基础 那么,简单地说,Git 究竟是怎样的一个系统呢? 请注意接下来的内容非常重要,若你理解了 Git 的思想和基本工作原理,用起来就会知其所以然,游刃有余. 在开始学习 G ...
- Git原理入门简析
为了获得更好的阅读体验,建议访问原地址:传送门 前言: 之前听过公司大佬分享过 Git 原理之后就想来自己总结一下,最近一忙起来就拖得久了,本来想塞更多的干货,但是不喜欢拖太久,所以先出一版足够入门的 ...
- Git原理入门解析
前言: 之前听过公司大佬分享过 Git 原理之后就想来自己总结一下,最近一忙起来就拖得久了,本来想塞更多的干货,但是不喜欢拖太久,所以先出一版足够入门的: 一.Git 简介 Git 是当前流行的分布式 ...
随机推荐
- JS 获取地址栏三级域名
<script type="text/javascript"> function Char(str) { var uchars = {}; str.replace(/\ ...
- redis之(二十一)redis之深入理解Spring Redis的使用
关于spring redis框架的使用,网上的例子很多很多.但是在自己最近一段时间的使用中,发现这些教程都是入门教程,包括很多的使用方法,与spring redis丰富的api大相径庭,真是浪费了这么 ...
- (译) Conditional Variational Autoencoders 条件式变换自编码机
Conditional Variational Autoencoders --- 条件式变换自编码机 Goal of a Variational Autoencoder: 一个 VAE(variati ...
- o-sync-and-o-direct
https://lwn.net/Articles/457667/ https://lwn.net/Articles/457667/ https://lwn.net/Articles/457667/ h ...
- 关于分布式事务的一个误解:使用了TransactionScope就一定会开启分布式事务吗?
背景: 事务是数据库管理系统的一个基本概念,事务具有四个基本特点,即ACID:原子性(Atomicity).一致性(Consistency).隔离性(Isolation)和持久性(Durability ...
- CSS 伪类 (Pseudo-classes)
CSS 伪类用于向某些选择器添加特殊的效果. CSS 伪类 (Pseudo-classes)实例: 超链接 本例演示如何向文档中的超链接添加不同的颜色. 超链接 2 本例演示如何向超链接添加其他样式. ...
- 承接Holograms外包 Holograms内容定制 Holograms场景外包开发
HoloLens仿真器与文档现已向开发者们开放 如何为Microsoft HoloLens全息眼镜开发应用? 每款运行Windows 10的设备都使用了相同统一的Windows内核.所以你学习了所有有 ...
- VR外包团队:VR和AR技术已经红得发紫
近6个月以来,VR和AR技术已经红得发紫. 不管是创业公司还是互联网巨头,如果不在VR领域有所涉猎,都不好意思跟外界打招呼.最近,阿里巴巴公布VR战略并推出了一条VR购物的视频,更是给业界打了满满一碗 ...
- MySql开启慢查询报错:Could not open /var/log/slow_query.log for logging (error 13).
Turning logging off for the whole duration of the MySQL server process. File '/var/log/slow_query.lo ...
- Python导入自定义包或模块
一般我们会将自己写的 Python 模块与 Python 自带的模块分开存放以达到便于维护的目的. Python 运行环境在查找模块时是对 sys.path 列表进行遍历,如果我们想在运行环境中添加自 ...