git的用法的总结
git的基本用法(一)
1).git的初始化
--配置用户名和邮箱 不然后面无法提交
git config --global user.name "myname";
git config --global user.email "xxxx@xx.com" --查看是否配置成功,并查看相关信息
cat /.gitconfig
2).克隆一个仓库
cd ......
--克隆仓库代码文件
git clone https://....../gitproject cd gitproject/ ls
3).初始化git仓库
git init
4).正常的工作流程,步骤如下:
1.创建或修改文件 #切换到目标目录
cd ...... #创建文件
touch file1 file2 file3 #给文件添加内容
echo "test" >> file1
echo "test" >> file2
echo "test" >> file3 #查看状态,当前显示未提交
git status
2.使用git add 命令创建或修改的新文件到本地缓存 #将创建的三个文件添加到缓存区
git add file1 file2 file3 #查看提交状态
git status #查看缓存区
git diff --cached
3.用git commit命令将新文件提交到本地仓库
#提交文件到本地仓库
git commit -m "add 3 files" 说明1:
如果在上面的命令的commit后面多加一个参数-a这个参数就可以把未添加到缓存的数据也提交到本地仓库。
git commit -a -m "add 3 files" 说明2:
-m参数的后面是写的注释信息
4.如果有远端仓库,则用git push命令将本地仓库文件同步到远端仓库;
#将本地仓库与远程仓库同步
git remote add origin(这是主机名) 远端仓库地址... #将本地仓库东西提交到远端仓库(输入远程仓库的对应的用户名和密码)
git push origin master
5)分支的创建与合并
1.分支的创建 #创建一个分支名为”experimental“
git branch experimental #查看分支列表,另外查看处于哪个分支上
git branch
2.切换分支
#切换分支到刚才创建的分支
git checkout experimental
3.将枝干上的内容合并到主干上面
#首先切换到主干上
git checkout master
#然后将枝干的内容合并到主干
git merge -m "merge experimental branch" experimental 说明:如果两个分支上面同时修改了同一个文件则无法提交成功。 解决方法:针对情况保留分支,并提交。
如何提交?
查看冲突的文件,然后用vim打开冲突的文件去掉HEAD前的<<<<< ; 然后重新添加到缓存,然后提交到本地仓库。
6)git diff 和 git diff --cached的区别
git diff 显示不在缓存的内容; git diff --cached显示在缓存的内容;
7)git add 和 git diff --cached
git add * 就是把所有做修改的、新增的内容都添加到本地,然后再次git diff就可以看到提交到本地的内容没有了,都到了缓存。
用git diff --cached可以查看到本次提交与上次提交的区别。
8) 删除分支
git branch -d 分支名
说明:上面这个命令只能删除当前已经合并的分支,但是对于未合并的分支要强制删除需要将命令中的-d改为大写,即git branch -D 分支名
9)撤销合并分支
当合并后一团乱麻,可以删除,命令如下:
git reset --hand HEAD^
然后查看被还原的文件;
10)日志统计
下面这个命令会显示提交的内容,显示有哪些文件,添加和删除了多少内容;
git log --stat
小结:
在开发环境上创建一个文件,用git add 命令是到缓存,用git commit命令提交是到本地仓库,用git push 是提交到远程仓库。
常用命令:
- git config:配置相关信息
- git clone:复制仓库
- git init:初始化仓库
- git add:添加更新内容到索引中
- git diff:比较内容
- git status:获取当前项目状况
- git commit:提交
- git branch:分支相关
- git checkout:切换分支
- git merge:合并分支
- git reset:恢复版本
- git log:查看日志
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
git的基本用法(二)
pull 是把其它仓库修改的内容拿过来,并且合并到当前仓库,相当于两个命令git fetch 和git merge ,当然前提是要先记得要切换到相关的目录下;
另外,新增一点点intelliJ IDEA中的git用法;
学会总结,学会重复,你能够完整重新走一次、用脑子复述出来才算进步。
复杂的事情简单做,简单的事情重复做。
git的用法的总结的更多相关文章
- Git的用法
Git的用法 Git 的也可以理解为版本控制器.版本控制器(维基的解释):维护工程蓝图的标准作法,能追踪工程蓝图从诞生一直到定案的过程.此外,版本控制也是一种软件工程技巧,借此能在软件开发的过程中,确 ...
- git subtree用法(转)
git subtree用法 一.使用场景 例如,在项目Game中有一个子目录AI.Game和AI分别是一个独立的git项目,可以分开维护.为了避免直接复制粘贴代码,我们希望Game中的AI子目录与AI ...
- git revert用法以及与git reset的区别
git revert用法 git revert 撤销 某次操作,此次操作之前和之后的commit和history都会保留,并且把这次撤销 作为一次最新的提交 * git revert HEAD ...
- Git进阶用法
Git高阶用法 1. 基本概念 你的本地仓库由Git维护的三棵树组成.第一个是你的工作目录,它持有实际文件:第二个是缓存区(Index),它像个缓存区域,临时保存您的改动:最后是HEAD,指向你最近一 ...
- 转:Git: git stash 用法小结
一.应用场景 综合下网上的介绍和资料, git stash (git储藏)可用于以下情形: 发现有一个类是多余的,想删掉它又担心以后需要查看它的代码,想保存它但又不想增加一个脏的提交.这时就可以考虑 ...
- git cherry-pick用法
场景: 如果你的应用已经发布了一个版本2.0, 代码分支叫release-2.0, 现在正在开发3.0, 代码的分支叫dev-3.0. 那么有一天产品说, 要把正在开发的某个特性提前上线, 也就是说要 ...
- git clean用法
git clean用法 想批量删除branch中新加的文件(untracked files),,git reset --hard不行- 首先确认要删除的文件 git clean -fd -n ...
- Git 的用法
对于GIT 的用法,最近一直在寻找方法.网上也能找到一些方法.但是感觉说的不是很清楚,在这里我基于自己经验写一些. 对于任何一种方法都要安装GIT. 我是基于VS Code 2015 来做的. 在安 ...
- Git复习(十三)之git revert用法及与git reset区别
git revert用法以及与git reset的区别 git revert用法 git revert 撤销 某次操作,此次操作之前和之后的commit和history都会保留,并且把这次撤销 作为一 ...
- git基本用法
基本用法(下) 一.实验说明 本节实验为 Git 入门第二个实验,继续练习最常用的git命令. 1.1 实验准备 在进行该实验之前,可以先clone一个练习项目gitproject ...
随机推荐
- LeetCode.941-有效山形数组(Valid Mountain Array)
这是悦乐书的第360次更新,第387篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第222题(顺位题号是941).给定一个整数数组A,当且仅当它是一个有效的山形数组时返回 ...
- 找工作Java面试 题搜集
面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面: 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注这些行为的 ...
- 深入理解java:4.2. 框架编程之Spring框架的设计理念
什么是Spring呢? Spring是为了解决企业应用开发的复杂性而创建的一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架. Spring优点 简单了解Spring之后,我们看一下Spri ...
- 【转】MySQL-Utilities,mysql工具包
原文:https://blog.csdn.net/leshami/article/details/52795777 MySQL Utilities 是一组基于python语言编写的python库的命令 ...
- React同构起步
React同构从0到1 前言 如果你想快速做react同构的新项目建议你去了解next.js等成熟框架,本教程仅限于想了解如何从0开始实现一个同构环境过程的同学,对于想改造现有spa项目的同学也很有帮 ...
- java_第一年_JDBC(1)
JDBC(Java Data Base Connectivity),用于实现java语言编程与数据库连接的API. 数据库驱动:应用程序并不能直接使用数据库,而需要通过相应的数据库驱动程序后再操作数据 ...
- centos 防火墙 iptables firewalld SELinux
参考 Centos7 只启用iptables 禁用firewalld功能 java.net.NoRouteToHostException: 没有到主机的路由 相关内容 centos7 中才开始引用fi ...
- [gym101981D][2018ICPC南京D题]Country Meow
题目链接 题目大意是求三维空间可以包含$n$个点的最小圆半径. 如果有做过洛谷P1337就会发现这到题很模拟退火,所以就瞎搞一发. $PS:$注意本题时限$3$秒. #include<bits/ ...
- 字典树(trie树) 后缀树 广义后缀树
转自:http://www.cnblogs.com/dong008259/archive/2011/11/11/2244900.html (1)字典树(Trie树) Trie是个简单但实用的数据结构, ...
- 实用且堪称神器的Chrome插件推荐(转)
出处: http://tengj.top/2018/02/17/ggcj/ 前言 相信很多人都在使用 Chrome 浏览器,其流畅的浏览体验得到了不少用户的偏爱,但流畅只是一方面, Chrome 最大 ...