文档章节

Git 学习

a
 ahucsxl
发布于 2016/04/10 20:03
字数 1538
阅读 54
收藏 2
点赞 1
评论 0

1、配置用户信息

命令:git config --global user.name"xxx"//配置用户名

          git config --global user.email"xxx"//配置用户邮箱

查看配置信息

命令:git config --list

2、在工作目录中初始化仓库

首先进入项目目录,然后使用命令:git init

3、从现有仓库克隆

命令:git clone [url]

            git clone -b [分支名] [url]

或命令:git clone [url] newname;  //newname为项目新名称

4、把文件纳入仓库

命令:git add AndroidManifest.xml;//加入文件

          git add src;//加入目录

          git add .//加入所有文件

5、提交

命令:git commit -m “First Commit”// -m为提交的描述信息,没有-m将视为非法

命令:git commit -a -m“xxx”//跳过暂存区域(跳过add步骤)直接commit

6、查看已暂存和未暂存的更新

未暂存命令:git status//仅显示修改的文件,红色表示未add,绿色表示未commit

未暂存命令:git diff//显示详细的修改详情,仅显示当前文件暂存区域的区别(已修改但未add和已add)

已暂存命令:git diff --staged//显示详细的修改详情,仅显示暂存区域上次提交快照的区别(已add但未commit和已commit)

7、移除文件

命令:git rm xxx //xx为文件名,注意此操作会删除原文件

最后提交的时候,该文件就不再纳入版本管理了。如果删除之前修改过并且已经放到暂存区域的话,则必须要用强制删除选项 -f(译注:即 force 的首字母),以防误删除文件后丢失修改的内容

命令:git rm --cached xxx //xx为文件名,仅从仓库中删除

8、重命名

命令:git mv oldname newname

9、查看提交历史

命令:git log

命令:git log -p -2//-p表示选项展开显示每次提交的内容差异,-2则仅显示最近的两次更新

命令:git log --stat//仅显示简要的增改行数统计

命令:git log --pretty//显示提交的概要信息

命令:git log --pretty=oneline//或short、full、fuller。。。显示提交的概要信息的不同方式

命令:git log --pretty=format//定制要显示的记录格式

例如:git log --pretty=format:"%h - %an, %ar : %s"//显示提交历史距离当前时间的时间间隔以及提交的概要信息

下面列出了常用的格式占位符写法及其代表的意义。

    选项 说明

    %H 提交对象(commit)的完整哈希字串

    %h 提交对象的简短哈希字串

    %T 树对象(tree)的完整哈希字串

    %t 树对象的简短哈希字串

    %P 父对象(parent)的完整哈希字串

    %p 父对象的简短哈希字串

    %an 作者(author)的名字

    %ae 作者的电子邮件地址

    %ad 作者修订日期(可以用 -date= 选项定制格式)

    %ar 作者修订日期,按多久以前的方式显示

    %cn 提交者(committer)的名字

    %ce 提交者的电子邮件地址

    %cd 提交日期

    %cr 提交日期,按多久以前的方式显示

    %s 提交说明

 

 

一些 git log 命令支持的选项其他常用的选项及其释义。

     选项 说明

    -p 按补丁格式显示每个更新之间的差异。

    --stat 显示每次更新的文件修改统计信息。

    --shortstat 只显示 --stat 中最后的行数修改添加移除统计。

    --name-only 仅在提交信息后显示已修改的文件清单。

    --name-status 显示新增、修改、删除的文件清单。

    --abbrev-commit 仅显示 SHA-1 的前几个字符,而非所有的 40 个字符。

    --relative-date 使用较短的相对时间显示(比如,“2 weeks ago”)。

    --graph 显示 ASCII 图形表示的分支合并历史。

    --pretty 使用其他格式显示历史提交信息。可用的选项包括 oneline,short,full,fuller 和 format(后跟指定格式)。

 

一些限制输出的选项。

     选项 说明

    -(n) 仅显示最近的 n 条提交

    --since, --after 仅显示指定时间之后的提交。

    --until, --before 仅显示指定时间之前的提交。

    --author 仅显示指定作者相关的提交。

    --committer 仅显示指定提交者相关的提交。

 

使用可视化工具

命令:gitk

10、撤消操作

修改最后一次提交

命令:git commit --amend

 /*任何提交到git的都可以被恢复*/
 

11、远程仓库的使用

克隆远程仓库命令:git clone http:...

查看当前配置有哪些远程仓库命令:git remote -v

添加远程仓库命令:git remote [shortname] [url]

从远程仓库抓取数据命令:git fetch[remote-name]

推送数据到远程仓库:git push [remote-name][branch-name]

查看远程仓库信息:git remote show[remote-name]

12、git技巧和窍门

自动补全命令:两次Tab键

命令别名:git config --global alias.ci commit// 将commit命令改为ci

13、分支结构

创建分支命令:git branch name//

切换分支命令:git checkout name//

创建并切换分支命令:git checkout -b name//

删除分支命令:git branch -d name//

合并分支命令:git merge name//

14、分支管理

显示所有分支命令:git branch

显示所有分支详细信息命令:git branch -v

推送本地分支命令:git push [仓库名][分支名]

同步远程服务器数据:git fetch [仓库名]

在远程分支基础上在本地分化出一个新分支:git checkout -b [本地分支名] [远程仓库名]/[远程分支名]//例如git checkout ser origin/ser(或者git checkout --track [远程仓库名]/[远程分支名])

删除远程分支:git push [远程仓库名]:[分支名]

15、分支衍合

衍合命令:git rebase master

服务器上的Git

本地协议:这也是从别人工作目录中获取工作成果的快捷方法。假如你和你的同事在一个项目中合作,他们想让你检出一些东西的时候,运行类似 git pull /home/john/project 通常会比他们推送到服务器,而你再从服务器获取简单得多。

SSH协议:唯一一个同时支持读写操作的网络协议

© 著作权归作者所有

共有 人打赏支持
a
粉丝 1
博文 82
码字总数 39098
作品 0
合肥
我是如何学习git

一开始学习git的时候,网上的git教程很多,看得人眼花缭乱,不知道如何下手。现在对git已经很熟悉了,回过头来总结一下学习方法。 一般官方文档是最全面,但是不一定适合快速上手。我们可以学...

好好编程
2017/11/14
0
0
一些关于Git的学习资源

学习.png Git是什么? Git是目前这个星球上最厉害的分布式版本控制系统。 Git有什么特点? 一句话描述:只要你用过它,你就一定会爱上它的,而且是爱不释手的那种,因为它会大大提高你的工作...

爱吃西瓜的番茄酱
2017/12/25
0
0
git文章列表

关于gitlab默认clone协议 Git实现从本地添加项目到远程仓库 翻翻git之---一个简单的标签控件 LabelView (随手发了两张小宝宝的玩耍照) Git 项目推荐 | Java 版微信普通号机器人 翻翻git之---...

d_watson
2016/04/20
26
0
GIT服务器搭建及配置详解

用久了SVN,突然换了项目组,新的项目要求使用GIT,还有点点生疏,于是不得不重新翻看以前的学习笔记,在复习的过程中想到自己也已经工作两年了,也该学会总结和思考,便诞生了开始有计划的写...

PeterChen_
2017/07/04
0
0
Git 学习看这篇就够了!

Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。 可能新手会问“git和github有什么关系啊?” git是一个版本控制工具; github是一个用git做版本控...

Michaelyn
2016/12/26
19
0
最近做了一个c#网络编程的课程

http://www.taikr.com/course/418 网络编程学习,一直缺少一个明确的学习路径,使用c#的高级语言特性,可以将复杂的网络编程学习大大简化。 unix network programming 虽然经典,但是毕竟已经...

李勇2
2016/09/05
97
0
Git 学习记录

最近公司在普及git的学习及使用,闲暇之余做下笔记 首先学习的网址: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013743256916071d599b3aed534a...

冰暝
2016/11/02
8
0
如何在Intellij Idea中使用GitHub

初次学习的Git的童鞋可以到此网站学习: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 以下是官网教程: https://git-scm.com/book/zh/v2 注:阅读......

帅得拖网速
2016/09/10
235
0
【git学习】SVN项目迁移到Git操作指南

2017年6月份的时候,我就着手在公司推广git,首先我自己尝试搭建了GitLab来管理代码,并且通过以下博客记录了GitLab的搭建,以及GitLab备份,GitLab升级等事情。 git学习——>在CenterOS系统...

qq446282412
05/19
0
0
Coding.net远程仓库与本地同步

1.本地安装git软件,借助git辅助完成本地仓库与远程仓库的交互 git地址:https://git-scm.com/ 2.进入本地仓库,用git Bash或者本地终端输入命令: 3.将远端仓库克隆至本地仓库 4.将本地修改...

把青春抚养大
03/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

shell中的函数、shell中的数组、告警系统需求分析

shell中的函数 格式: 格式: function f_name() { command } 函数必须要放在最前面 示例1(用来打印参数) 示例2(用于定义加法) 示例3(用于显示IP) shell中的数组 shell中的数组1 定义数...

Zhouliang6
今天
2
0
用 Scikit-Learn 和 Pandas 学习线性回归

      对于想深入了解线性回归的童鞋,这里给出一个完整的例子,详细学完这个例子,对用scikit-learn来运行线性回归,评估模型不会有什么问题了。 1. 获取数据,定义问题     没有...

wangxuwei
今天
1
0
MAC安装MAVEN

一:下载maven压缩包(Zip或tar可选),解压压缩包 二:打开终端输入:vim ~/.bash_profile(如果找不到该文件新建一个:touch ./bash_profile) 三:输入i 四:输入maven环境变量配置 MAVEN_HO...

WALK_MAN
今天
0
0
33.iptables备份与恢复 firewalld的9个zone以及操作 service的操作

10.19 iptables规则备份和恢复 10.20 firewalld的9个zone 10.21 firewalld关于zone的操作 10.22 firewalld关于service的操作 10.19 iptables规则备份和恢复: ~1. 保存和备份iptables规则 ~2...

王鑫linux
今天
2
0
大数据教程(2.11):keeperalived+nginx高可用集群搭建教程

上一章节博主为大家介绍了目前大型互联网项目的系统架构体系,相信大家应该注意到其中很重要的一块知识nginx技术,在本节博主将为大家分享nginx的相关技术以及配置过程。 一、nginx相关概念 ...

em_aaron
今天
1
0
Apache Directory Studio连接Weblogic内置LDAP

OBIEE默认使用Weblogic内置LDAP管理用户及组。 要整理已存在的用户及组,此前办法是导出安全数据,文本编辑器打开认证文件,使用正则表达式获取用户及组的信息。 后来想到直接用Apache Dire...

wffger
今天
2
0
HFS

FS,它是一种上传文件的软件。 专为个人用户所设计的 HTTP 档案系统 - Http File Server,如果您觉得架设 FTP Server 太麻烦,那么这个软件可以提供您更方便的档案传输系统,下载后无须安装,...

garkey
今天
1
0
Java IO类库之BufferedInputStream

一、BufferedInputStream介绍 /** * A <code>BufferedInputStream</code> adds * functionality to another input stream-namely, * the ability to buffer the input and to * sup......

老韭菜
今天
0
0
STM 32 窗口看门狗

http://bbs.elecfans.com/jishu_805708_1_1.html https://blog.csdn.net/a1985831055/article/details/77404131...

whoisliang
昨天
1
0
Dubbo解析(六)-服务调用

当dubbo消费方和提供方都发布和引用完成后,第四步就是消费方调用提供方。 还是以dubbo的DemoService举例 -- 提供方<dubbo:application name="demo-provider"/><dubbo:registry address="z...

青离
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部