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. 用poi从excel文档导入数据

    import org.apache.commons.lang3.StringUtils; import org.apache.poi.hssf.usermodel.HSSFWorkbook; impo ...

  2. 【神经网络与深度学习】【Python开发】Caffe配置 windows下怎么安装protobuf for python

    首先从google上下载protobuf-2.5.0.zip和protoc-2.5.0-win32.zip,然后把protoc-2.5.0-win32.zip里的protoc.exe放到protobu ...

  3. 【神经网络与深度学习】在Windows8.1上用VS2013编译Caffe并训练和分类自己的图片

    最近想熟悉一下深度学习,体验了一下Caffe,简单写写训练和分类的过程: 1.下载Caffe VS2013工程:https://github.com/Microsoft/caffe 2. 解压并用VS ...

  4. 9.Jmeter 多个threadgroup 中的配置元件会一次性进行初始化

    例如3个threadGroup,每一个threadGroup中都会定义了 一些配置原件,例如 用户定义变量,  jdbc 链接配置等.  当执行testplan(测试计划)时, 这些配置元件会一起初始 ...

  5. elasticsearch-analysis-ik windows 环境 IK 中文分词器 的 下载 和 安装

    1,下载插件压缩包(本地测试建议用迅雷下,生产用的绝对不要用迅雷下),链接地址:https://github.com/medcl/elasticsearch-analysis-ik/releases/ ...

  6. 开发维护中遇到问题---eclipse、发版问题

    1.jar包冲突问题, [服务器启动service服务器,tomcat也已启动]然后浏览器访问,会出现这样子的问题现象:tomcat什么的启动成功,但是访问时会出现404: 解决方法:先停掉tomca ...

  7. 微软宣布加入 OpenJDK,打不过就改变 Java 未来!

    近日,微软的 Bruno Borges 在 OpenJDK 邮件列表中发布了一条消息,内容包含接下来发生的事情以及微软如何开始将其团队整合到 OpenJDK 社区. 在邮件中,Bruno Borges ...

  8. 解决IOS把数字渲染为电话号码,颜色为蓝色解决方案

    可将telephone=no,则手机号码不被显示为拨号链接<meta name="format-detection" content="telephone=no&q ...

  9. Vue组件学习(转载)

    什么是组件:组件是Vue.js最强大的功能之一.组件可以扩展HTML元素,封装可重用的代码.在较高层面上,组件是自定义的元素,Vue.js的编译器为它添加特殊功能.在有些情况下,组件也可以是原生HTM ...

  10. k路归并

    public static int[] k_merge(ArrayList<int[]> k_array) { if(CollectionUtils.isEmpty(k_array)){ ...