git init        --    初始化仓库,

git clone    --    从远端克隆仓库到本地

git status   --    查看git仓库的状态

git log        --    查看git仓库的日志

git add       --   将修改提交到本地仓库,git add filename就是提交filename这个文件,git add .就是提交所以变化的文件

git diff        --    不带参数的话就是显示当前工作区的修改变化。

git diff [branchA] [branchB]可以用来比较两个分支。

git commit  -- 提交被add进来的改动

git commit -m “the commit message"

                      git commit -a 会先把所有已经track的文件的改动add进来,然后提交(有点像svn的一次提交,不用先暂存). 对于没有track的文件,还是需要git add一下.
                      git commit --amend 增补提交. 会使用与当前提交节点相同的父节点进行一次新的提交,旧的提交将会被取消.
 
git reset    --  可以理解成删除本地仓库上的一次提交,相当于还原到上次提交的状态
git revert   --   反转撤销提交.只要把出错的提交(commit)的名字(reference)作为参数传给命令就可以了.
                      git revert HEAD: 撤销最近的一个提交.

                      git revert会创建一个反向的新提交,可以通过参数-n来告诉Git先不要提交.

这个我要好好理解下,因为用的不多,也只是在smartgit上用过几次。

git branch  --  创建分支

git checkout -- 切换到某个文件,如果是git checkout filename的话就是丢弃filename这个文件的所有修改。

git merge     -- 把一个分支merge到当前分支

如果出现冲突,需要手动修改,可以用git mergetool.

                       解决冲突的时候可以用到git diff,解决完之后用git add添加,即表示冲突已经被resolved.
git tag         -- 打tag,用git tag v1.0
git fetch      -- 
git pull        -- 
git  push     --
git rebase   --
 
 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Submodule的操作方式,这才是我想写这边随笔的真正目的。
我是用github测试的:
1.现在git hub上创建两个git仓库:例如Test_Submodule_SubTest_Submodule两个常规仓库。
2.将Test_Submodule这个仓库clone到本地,然后cd到根目录下。
3.这一步才是重要的一步: git submodule add https://github.com/Kent-Hu/Test_Submodule_Sub.git Sub/Test_Submodule_Sub,就是将一个仓库以submodule的形式添加到另一个仓库,这个时候就会将Test_Submodule_Sub.git克隆到Test_Submodule的/sub目录下。
4.git add .    将新添加的所有文件加到worktree。
5.git push    将文件添加到远端。
使用:
git clone https://github.com/Kent-Hu/Test_Submodule.git的话是没法克隆submodule下的源码的,需要加--recursive选项。
$ git clone --recurse-submodules https://github.com/Kent-Hu/Test_Submodule.git
Cloning into 'Test_Submodule'...
remote: Counting objects: 8, done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 8 (delta 0), reused 8 (delta 0), pack-reused 0
Unpacking objects: 100% (8/8), done.
Submodule 'Sub/Test_Submodule_Sub' (https://github.com/Kent-Hu/Test_Submodule_Sub.git) registered for path 'Sub/Test_Submodule_Sub'
Cloning into 'C:/Users/h144197/Desktop/Test_Submodule/Sub/Test_Submodule_Sub'...
remote: Counting objects: 4, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 4 (delta 0), reused 4 (delta 0), pack-reused 0
Submodule path 'Sub/Test_Submodule_Sub': checked out 'ceebbcc51a03cb1c17eee8adb5c22cf172eb0615'

  

Git 几个常用操作的更多相关文章

  1. git学习 本地常用操作01

    注意: Microsoft的Word格式是二进制格式,因此,版本控制系统是没法跟踪Word文件的改动 不要使用Windows自带的记事本编辑任何文本文件 开始git项目: 初始化本地项目: 初始化:g ...

  2. Git安装与常用操作

    Git作为一个版本控制工具,使用前需进行下载安装:可自行到官网下载. 一.安装(windows) 1.双击下载好的文件进行安装,弹窗中点击"next" 2.默认勾选,继续点击&qu ...

  3. Git介绍及常用操作演示(一)--技术流ken

    Git介绍 Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发 ...

  4. CI 知识 :Git介绍及常用操作

    Git介绍 Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发 ...

  5. git工作中常用操作总结

    这篇文章主要记录下工作中常用的git操作.主要是对之前文章记录的问题做个总结,这个其实在idea中操作更加简单 别名配置 在敲git 命令时,其实可以使用别名,比如 commit可以配置为ci 下面是 ...

  6. Git与GitHub常用操作

    --------------------------基本操作--------------------------clone 拷贝远程仓库commit 本地提交push 远程提交pull 更新本地--- ...

  7. git入门(4)团队中git保管代码常用操作

    在团队中协作代码时候,一定要熟练使用以下git命令,不至于把代码库弄乱, PS:一定要提交自己代码(git push)时候,先进行更新本地代码库(git pull),不然提交异常 git常用命令 1· ...

  8. git基础之常用操作

    一.版本提交: (1)git add 文件名 (2)git commit -m "版本提交信息" 注:git分两个区:工作区+版本库 在电脑中看到的文件夹就是工作区 有一个隐藏的. ...

  9. git最基础常用操作

    单人开发托管够用 未列出的用到一个补一个

  10. git命令行常用操作总结

    关于 更多使用细节(grammar和book),请参考 官网 1.上传代码 1.1 创建自己的远程Repository, github或者gitee 1.2 创建本地git仓库 $ git init ...

随机推荐

  1. 可视化布局html5

    http://www.bootcss.com/p/layoutit/ http://layuiout.magicalcoder.com/magicaldrag-admin/drag

  2. git解决代码冲突

    1.当项目开发是几个人的时候,难免会出现代码冲突,使用git命令行解决冲突的方法如下: git checkout develop git pullgit checkout feature/新建会员功能 ...

  3. weblogic中部署项目通常有三种方式

    在weblogic中部署项目通常有三种方式:第一,在控制台中安装部署:第二,将部署包放在domain域中autodeploy目录下部署:第三,使用域中配置文件config.xml 进行项目的部署. 控 ...

  4. SpringSecurity简单记录

    在pom.xml中将springsecurity导入后,对于springsecurity会出现三个依赖包:spring-security-web,spring-security-config,spri ...

  5. Echarts扩展地图文字位置错乱的问题

    最近在弄echarts 因为要用到扩展地图,所以在官网下载了相应的json文件 ,引入之后发现文字位置错乱 于是查找网上资料 发现 textFixed : {                      ...

  6. 认识jQuery

    JQ的优势 轻量级. 强大的选择器 出色的DOM操作的封装 可靠的事件处理机制 完善的Ajax 不污染顶级变量 出色的浏览器兼容性 链式操作 隐式迭代 行为层与结构层分离 丰富的插件支持 完善的文档 ...

  7. java上传图片

    -- jsp 一定要加上enctype="multipart/form-data" method="post"  不加无法辨别是否是上传表单的数据 <fo ...

  8. java基础知识—变量、数据类型和运算符

    1.变量:存储数据的一个基本单元.2.变量的声明和赋值: 1)声明并赋值;数据类型 变量名=值 例如:int prince=10; 2) 声明.赋值分为两步: 数据类型 变量名: 例如:int=pri ...

  9. 解决getElementsByClassName()在IE8下的兼容问题

    getElementsByClassName,这个方法让我们可以通过 class 属性中的类名来访问元素,但是IE9 以下的浏览器不支持 .为解决这个问题,我们写一个兼容函数 getByClass() ...

  10. Delphi非官方的补丁

    http://git.kngstr.com/KngStr/delphi-fixes 使用方法 方法一: 1. 拷贝需要的补丁文件到你的工程目录 2. 拷贝编译的时候缺少或错误的文件到你的工程目录 优缺 ...