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的用法的总结的更多相关文章

  1. Git的用法

    Git的用法 Git 的也可以理解为版本控制器.版本控制器(维基的解释):维护工程蓝图的标准作法,能追踪工程蓝图从诞生一直到定案的过程.此外,版本控制也是一种软件工程技巧,借此能在软件开发的过程中,确 ...

  2. git subtree用法(转)

    git subtree用法 一.使用场景 例如,在项目Game中有一个子目录AI.Game和AI分别是一个独立的git项目,可以分开维护.为了避免直接复制粘贴代码,我们希望Game中的AI子目录与AI ...

  3. git revert用法以及与git reset的区别

    git revert用法 git revert 撤销 某次操作,此次操作之前和之后的commit和history都会保留,并且把这次撤销 作为一次最新的提交 * git revert HEAD     ...

  4. Git进阶用法

    Git高阶用法 1. 基本概念 你的本地仓库由Git维护的三棵树组成.第一个是你的工作目录,它持有实际文件:第二个是缓存区(Index),它像个缓存区域,临时保存您的改动:最后是HEAD,指向你最近一 ...

  5. 转:Git: git stash 用法小结

    一.应用场景 综合下网上的介绍和资料, git stash (git储藏)可用于以下情形: 发现有一个类是多余的,想删掉它又担心以后需要查看它的代码,想保存它但又不想增加一个脏的提交.这时就可以考虑  ...

  6. git cherry-pick用法

    场景: 如果你的应用已经发布了一个版本2.0, 代码分支叫release-2.0, 现在正在开发3.0, 代码的分支叫dev-3.0. 那么有一天产品说, 要把正在开发的某个特性提前上线, 也就是说要 ...

  7. git clean用法

    git clean用法   想批量删除branch中新加的文件(untracked files),,git reset --hard不行-   首先确认要删除的文件 git clean -fd -n ...

  8. Git 的用法

    对于GIT  的用法,最近一直在寻找方法.网上也能找到一些方法.但是感觉说的不是很清楚,在这里我基于自己经验写一些. 对于任何一种方法都要安装GIT. 我是基于VS Code 2015 来做的. 在安 ...

  9. Git复习(十三)之git revert用法及与git reset区别

    git revert用法以及与git reset的区别 git revert用法 git revert 撤销 某次操作,此次操作之前和之后的commit和history都会保留,并且把这次撤销 作为一 ...

  10. git基本用法

    基本用法(下)           一.实验说明 本节实验为 Git 入门第二个实验,继续练习最常用的git命令. 1.1 实验准备 在进行该实验之前,可以先clone一个练习项目gitproject ...

随机推荐

  1. 一张图包含SEO一切要点

    看到一张好图 from http://www.rongyipiao.com/?p=8

  2. java并发编程 线程基础

    java并发编程 线程基础 1. java中的多线程 java是天生多线程的,可以通过启动一个main方法,查看main方法启动的同时有多少线程同时启动 public class OnlyMain { ...

  3. 在SQL Server 中创建外键

    建外键的前提是此外键必须是另外一个表的主键. 建外键的步骤: 第一步打开要建外键表的设计器,右击选择“关系”. 然后弹出“外键关系”窗体,我们选择“添加”,然后点击“表和列规范”后面的小按钮, 就会弹 ...

  4. Qt - 基于HTTP的网络编程

    HTTP(超文本传输协议 Hyper Text Transfer Protocol) 基于TCP/IP通信协议,属于应用层协议. 使用情况: HTTP是无连接(无连接的含义是限制每次连接只处理一个请求 ...

  5. CDH管理节点扩容磁盘步骤

    把4个节点加12G内存,把hive的heap调到6G,按group重启服务让配置生效 注: 停服务前在yarn的application webui查flink的application id yarn ...

  6. (4.13)mysql备份原理(转)

    关键词:mysqldump原理,--single-transaction,mysql备份原理 转自:https://www.cnblogs.com/cchust/p/5452557.html MySQ ...

  7. 写 JSP 的痛点,真的非常痛!

    一.前戏 前后端分离已成为互联网项目开发的业界标准使用方式,通过nginx+tomcat的方式(也可以中间加一个nodejs)有效的进行解耦,并且前后端分离会为以后的大型分布式架构.弹性计算架构.微服 ...

  8. emmet语法列表

    emmet语法  来源:https://docs.emmet.io/cheat-sheet/ Child: > nav>ul>li <nav> <ul> &l ...

  9. linux根目录各个目录介绍

  10. Centos7搭建FTP服务

    1.安装 vsftpd ​[root@CentOS ftp]# yum -y install vsftpd2.启动 vsftpd 服务 ​[root@CentOS ~]# systemctl star ...