Git学习笔记一
2015-11-12 10:18
281 查看
git学习笔记一
1、帮助命令
git 命令的基本描述git help <command> 具体命令详细描述
git config 配置命令描述
2、使用一个c语言创建库的项目来学习git基础命令
2.1、创建Git库, 项目根目录下$ git init
2.2、配置git
将在该目录下生成.git目录,修改配置文件或直接使用命令添加个人信息:在.git目录下有一个config文件
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
#添加以下语句
[user]
name = czw
emai= xxx@kuxun.cn
通过命令配置:
2.3、向git库添加或删除文件 git add 和 git rm,查看库状态 git status
在git1.4以后的版本git add命令已包含标识文件修改命令。在文件修改之后,直接执行git add即可2.4在根目录添加.gitignore文件以过滤文件
注意规则后面不要注释不要TAB或者空格什么的!!
在git status看一下,不必要的文件将会被忽略了。
2.5、ubuntu下git的配色
默认情况下,ubuntu下的终端中,git没有颜色,可以使用如下命令给git配色2.6、修改git关联的编辑器
执行git commit -m 注释 更新到仓库,当仅执行git commit时会调用编辑器,若ubuntu未设定过默认编辑器,即默认为/bin/nano编辑器。git会使用此编辑器,可通过以下办法修改为vima、通过命令sudo update-alternatives --config editor修改ubuntu的默认编辑器,选择3即为vim
其中vim.basic是一个完整版的vim,但没有图像界面菜单栏
vim.tiny是一个vim的缩减版。
b、仅修改git的默认编辑器
编辑.git/config文件。在core中添加editor = vim。
3、参照网上教程一步一步学习git的常用功能
http://www.admin10000.com/document/5374.html
3.1、开始准备,创建目录ctest
新建文件helloworld.c新建过滤文件.gitignore。创建git仓库 git init。添加更改 git add .
修改helloworld.c添加一行
查看一下
查看更改的内容:
3.2、添加更改并提交
3.3、版本回退
同理再添加一个printf,查看版本提交记录回退命令:
git reset --hard HEAD^ #回退到上个版本
git reset --hard HEAD^^ #回退到上上个版本
git reset --hard HEAD~100 #回退到前100个版本
再返回最新的版本
3.4、工作区和暂存区
工作区:就是你在电脑上看到的目录,比如目录下testgit里的文件(.git隐藏目录版本库除外)。或者以后需要再新建的目录文件等等都属于工作区范畴。版本库(Repository):工作区有一个隐藏目录.git,这个不属于工作区,这是版本库。其中版本库里面存了很多东西,其中最重要的就是stage(暂存区),还有Git为我们自动创建了第一个分支master,以及指向master的一个指针HEAD。
前面使用Git提交文件到版本库有两步:
第一步:是使用 git add 把文件添加进去,实际上就是把文件添加到暂存区。
第二步:使用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支上。
编辑helloworld.c,增加
再新增文件readme,查看git
撤销修改和删除文件操作
撤销修改
helloworld.c添加一行
,文件保存后,查看状态
若要撤销此次修改,三个办法:
a、如果我知道要删掉那些内容的话,直接手动更改去掉那些需要的文件,然后add添加到暂存区,最后commit掉。
b、按以前的方法直接恢复到上一个版本。使用 git reset --hard HEAD^
c、(use "git checkout -- <file>..." to discard changes in working directory)
命令 git checkout --helloworld.c意思就是,把readme.txt文件在工作区做的修改全部撤销,2种情况,如下:
1.helloworld.c自动修改后,还没有放到暂存区,使用该命令就回到和版本库一模一样的状态。
2.另外一种是readme.txt已经放入暂存区了,接着又作了修改,撤销修改就回到添加暂存区后的状态。
对于第二种情况,继续详述如下:
注意:命令git checkout -- readme.txt 中的 -- 很重要,如果没有 -- 的话,那么命令变成创建分支了。
3.5、删除文件
相关文章推荐
- mysql using()用法
- 关于C++内存越界访问的问题
- Javascript实现页面跳转的几种方式
- WPF DocumentViewer隐藏工具栏和搜索栏
- SQL中浅谈union、union all、Intersect、Minus的区别
- Base64类有encodeToString和decodeFast无法使用
- Ubuntu 14.04 使用megacli做raid磁盘阵列
- IOS Quartz 各种绘制图形用法---实现画图片、写文字、画线、椭圆、矩形、棱形等
- C++学习笔记 -- 虚析构函数与纯虚析构函数
- CGContext用法详解
- 07(maven+SSH)网上商城项目实战之springmvc乱码问题
- MD5加密java代码
- OPENCV轮廓提取findContours和drawContours
- RS485_PTZ_云台控制
- 为什么 要虚析构函数
- FreeMarker常用知识点整理
- c++实现读写共享锁
- Eclipse导出APK文件报错 android lint problem
- 《Mysql技术内幕》札记(下)
- CentOS 6安装java