文档章节

git 常用命令梳理

深山猎人
 深山猎人
发布于 2016/06/13 14:22
字数 881
阅读 75
收藏 7

Git已经成为当前最流行的版本控制解决方案了,如果你现在还不使用git都不好意思出门了。如果细数起来Git的命令太多了,但是常用的就那么几组命令,下面说下常用命令的用法:

对于本地仓库操作:
1.   git init 使一个不受git管理的文件夹成为一个Git管理的项目
2.  git add  将改变或新文件加入到 git暂存区中
3. git commit 将暂存区内容写入到git本地仓库中
4. git rm   从git本地仓库移除文件(只是从仓库中移除,并不真正删除文件)
5. git status  查看当前本地仓库状态,是否有改变的文件,是否有冲突的文件等
6. git log  查看提交历史记录,将按照时间倒叙排列
7. git config 配置git ,常用的是配置用户名和邮箱 git config --global user.name "王大拿" git config --global user.email "my@studyits.cn"

与远程仓库交互命令:
8.  git clone 克隆远程仓库到本地
9.   git fetch 将远程仓库改变拉取到本地(不自动合并) (不常用,常用git pull)
10.  git pull  将远程仓库改变拉取到本地 (自动合并如果没有冲突)
11. git push  将本地仓库改变推送到远程仓库
12. git remote add origin http://URL 将本地GIT仓库与远程项目关联

其他常用命令:
git branch    分支管理
git checkout  切换分支, 或者用于放弃当前修改
git tag   标签管理
git stash 将当前改变临时存储,稍后回来修改 git stash pop 取回刚才改变
git reset [--hard] COMMIT_ID 使HEAD移动到COMMIT_ID,放弃COMMIT_ID到 HEAD之间的提交,如果加上 --hard将直接放弃并删除期间创建的文件, git reset放弃的提交不在历史记录中提现
git revert COMMIT_ID 放弃某次提交,但是放弃的提交将在历史记录中存在

下面简单演示下:(本地仓库操作)


#进入home目录
cd ~
#创建一个测试文件夹 test_project
make test_project
#使当前文件成为git目录
git init
#新创建一个文件index.html,并写入helloworld
touch ./index.html
echo "hello world" > ./index.html
#将改变写入到git暂存区中
git add index.html
#将改变提交到本地仓库, 并通过-m 记录下改变原因或者备注信息
git commit -m "新建index.html"
#通过git log 可以查看改变
git log

git log记录

#接着在创建一个index2.html
touch index2.html
# 查看当前git状态
git status
#返回信息如下:
On branch master
Untracked files:
  (use "git add <file>..." to include in what will be committed)

    index2.html

nothing added to commit but untracked files present (use "git add" to track)
#此时说明index2.html还不受git管理
git add index2.html
#再次查看状态
git status
#返回信息如下
On branch master
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

    new file:   index2.html
已经是unstage状态了
#把更新写入数据库中
git commit -m "新创建index2.html"

远程仓库操作:

#把远成仓库代码克隆到本地(最后的iReact可选,如果不写默认是iReact,你可以指定成别的名称,例如myFirstProject)
git clone https://git.oschina.net/wzwahl36/iReact.git iReact
#获取远成的更新
cd iReact
git pull
#修改一个文件,然后把更新推送到远成仓库
touch index.html
git add index.html
git commit -m "add index.html test"
git push

© 著作权归作者所有

深山猎人
粉丝 17
博文 41
码字总数 20647
作品 0
朝阳
后端工程师
私信 提问
2017/05/13工作日志

上午: 1.学习jenkins应用的使用: 遇到问题1: 启动jenkins报错:address already in used 此时说明端口被占用,解决方式:执行命令: 运行“java -jar jenkins.war --ajp13Port=-1 --httpPo...

李华东
2017/05/13
3
0
Git系列二之数据管理

笔者Q:552408925、572891887 架构师群:471443208 bjstack运维社区:524721466 1.Git基本管理 git常用的基本操作 1.1提交数据 我们可以简单的把工作目录理解成是一个被Git服务程序管理的目录,...

Bgxuliangwei
2017/05/11
0
0
yii2 - composer 方式安装 / 管理扩展

composer 简单梳理 composer 作为 php 的依赖管理用起来还是很方便的,国内现在也有即时同步的镜像,所以不用爬墙也能很好的体验了 github 放着软件包 packagist 原数据,索引表 https://pa...

big_cat
2016/05/17
722
0
[gerrit场景教程] gerrit "missing Change-Id"解决办法

套路部分为解决问题的步骤,心法部分为所用到的知识点的梳理. 场景: 你用 git push 向 gerrit 提交了待审核代码,一切都很顺利,你脑袋里冒出了"代码头上加了'佛祖保佑'果然有效"的想法. 此时 ...

你的承諾早已氾黃
2018/09/05
0
0
bash 工具集--Gitbash

Gitbash 是一个 bash 工具集,对 git 的常用子命令做了一系列别名处理。不用再输入类似 的命令直接进行 'clone http://...' 就可以,省掉了 git 主命令的输入。 对于 commit , checkout 等常...

NicholasXu
2015/10/23
4K
0

没有更多内容

加载失败,请刷新页面

加载更多

关于运维,该怎么决定它的方向,这个似工作又似兴趣的存在

我之前主要从事网络、桌面、机房管理等相关工作,这些工作使我迷惘,这应该是大多数运维人都经历过的过程; 18年国庆,我从国内前三的消费金融公司裸辞,下海创业,就是想要摆脱这样的困境。...

网络小虾米
20分钟前
5
0
Java Timer的用法

Timer timer = new Timer(); timer.schedule(new TimerTask() { public void run() { System.out.println("11232"); } }, 200000 , 1000); public void schedule(TimerTask task, long delay......

林词
23分钟前
4
0
使用js动态加载外部js文件以及动态创建script脚本

动态脚本指的是在页面加载时不存在,但将来的某一时刻通过修改该DOM动态添加的脚本。和操作HTML元素一样,创建动态脚本也有两种方式:插入外部文件和直接插入JavaScript代码。 动态加载外的外...

Bing309
31分钟前
3
0
从零开始入门 K8s | Kubernetes 网络概念及策略控制

作者 | 阿里巴巴高级技术专家 叶磊 一、Kubernetes 基本网络模型 本文来介绍一下 Kubernetes 对网络模型的一些想法。大家知道 Kubernetes 对于网络具体实现方案,没有什么限制,也没有给出特...

阿里巴巴云原生
35分钟前
3
0
天气获取

本文转载于:专业的前端网站➨天气获取 $.get("http://wthrcdn.etouch.cn/WeatherApi", { citykey: cityCode }, function (d) { //创建文档对象 var parser = new ......

前端老手
35分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部