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. LeetCode.941-有效山形数组(Valid Mountain Array)

    这是悦乐书的第360次更新,第387篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第222题(顺位题号是941).给定一个整数数组A,当且仅当它是一个有效的山形数组时返回 ...

  2. 找工作Java面试 题搜集

    面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面: 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注这些行为的 ...

  3. 深入理解java:4.2. 框架编程之Spring框架的设计理念

    什么是Spring呢? Spring是为了解决企业应用开发的复杂性而创建的一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架. Spring优点 简单了解Spring之后,我们看一下Spri ...

  4. 【转】MySQL-Utilities,mysql工具包

    原文:https://blog.csdn.net/leshami/article/details/52795777 MySQL Utilities 是一组基于python语言编写的python库的命令 ...

  5. React同构起步

    React同构从0到1 前言 如果你想快速做react同构的新项目建议你去了解next.js等成熟框架,本教程仅限于想了解如何从0开始实现一个同构环境过程的同学,对于想改造现有spa项目的同学也很有帮 ...

  6. java_第一年_JDBC(1)

    JDBC(Java Data Base Connectivity),用于实现java语言编程与数据库连接的API. 数据库驱动:应用程序并不能直接使用数据库,而需要通过相应的数据库驱动程序后再操作数据 ...

  7. centos 防火墙 iptables firewalld SELinux

    参考 Centos7 只启用iptables 禁用firewalld功能 java.net.NoRouteToHostException: 没有到主机的路由 相关内容 centos7 中才开始引用fi ...

  8. [gym101981D][2018ICPC南京D题]Country Meow

    题目链接 题目大意是求三维空间可以包含$n$个点的最小圆半径. 如果有做过洛谷P1337就会发现这到题很模拟退火,所以就瞎搞一发. $PS:$注意本题时限$3$秒. #include<bits/ ...

  9. 字典树(trie树) 后缀树 广义后缀树

    转自:http://www.cnblogs.com/dong008259/archive/2011/11/11/2244900.html (1)字典树(Trie树) Trie是个简单但实用的数据结构, ...

  10. 实用且堪称神器的Chrome插件推荐(转)

    出处: http://tengj.top/2018/02/17/ggcj/ 前言 相信很多人都在使用 Chrome 浏览器,其流畅的浏览体验得到了不少用户的偏爱,但流畅只是一方面, Chrome 最大 ...