1.git的状态分为working status,stage status和commit status。git diff查看的是working status和 stage status之间的不同,git diff --cached查看的是stage status和commit status之间的不同,git diff HEAD 查看的是当前working status和最近一次commit的commit status的不同。

2.使用git log命令可以按时间从近到远的顺序查看每次的commit记录。所显示的信息包括一串hash码,提交者姓名和Email和commit comments。如果要简化显示内容,我们可以输入git log --oneline命令,这样就会只显示 hash码和commit comments,而且显示在同一行中。

3.我们可以在命令行使用 git reset --hard <commit ID号> 或者 git reset --hard HEAD来进行回退。

4.可以使用git rm filename来删除working status中的文件。如果想删除文件夹,可以通过cd dirname,然后输入git rm -r . 命令删除整个文件夹,最后cd ..回到上一层来git commit。

5  git add -A #stages All

  git add .   #stages new and modified, without deleted

  git add -u #stages modified and deleted, without new

6.git rm from_filename to_filename意为给文件重命名,这一条指令相当于执行了mv from_filename to_filename,rm from_filename,和git add to_filename三条指令。

7.一个 .gitignore 例子。

  1.     # 此为注释 – 将被 Git 忽略 
        # 忽略所有 .a 结尾的文件
        *.a  
        
    # 但 lib.a 除外 
        !lib.a
        # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO  
        /TODO
        
    # 忽略 build/ 目录下的所有文件
        build/
        # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt 
        doc/*.txt
  2. 8.git checkout develop表示切换到develop分支。git checkout -- filename表示丢弃在working status的所有修改或者放弃删除某文件,回到上一次commit时候的文件状态。
    9.git pull 相当于git fetch 和git merge的合并。在使用时尽量用gi fetch,然后对比更新情况,再手动合并。
    例如
    git fetch origin develop:tmp
    git diff tmp 
    git merge tmp
    从远程的develop分支下载代码并新建tmp分支,然后对比本地所在分支与tmp分支的区别,最后进行合并。

10.git branch -r查看远程库的分支情况。git remote -v查看远程库的URL和名称。

11.git push origin :branch_you_want_to_delete   其中origin和冒号之间有空格,表示用本地的空分支取代远程分支,也就是达到了删除远程分支的目的。

       git push origin test:master         // 提交本地test分支 作为 远程的master分支
       git push origin test:test              // 提交本地test分支作为远程的test分支

git and github学习笔记的更多相关文章

  1. Git与GitHub 学习笔记

    以下信息来源于网络资料,并进行整理与精简 Git是目前世界上最先进的分布式版本控制系统,和svn,vss等一样都是进行版本控制的. GitHub是一个软件项目的托管平台,相当于自己建立的 svn服务器 ...

  2. git和github学习笔记

    1. 了解Git和Github 2. 使用Github 3. Git安装和使用 4. Git基本工作流程 5. Git初始化及仓库创建和操作 6. Git管理远程仓库 7. Github Pages ...

  3. eclipse使用git及github学习笔记

    项目托管 1.首先需要在github上建立一个远端仓库  点击Create repository后,会在github上建立相应的git仓库,并会出现如下界面: 复制https或者ssh的仓库地址,远端 ...

  4. Git与GitHub学习笔记(七)Windows 配置Github ssh key

    前言 SSH是建立在应用层和传输层基础上的安全协议,其目的是专为远程登录会话和其他网络服务提供安全性的保障,用过SSH远程登录的人都比较熟悉,可以认为SSH是一种安全的Shell.SSH登录是需要用户 ...

  5. Git与GitHub学习笔记(三).gitignore文件忽略和删除本地以及远程文件

    一.Git提供了文件忽略功能.当对工作区某个目录或者某些文件设置了忽略后,git将不会对它们进行追踪 HELP:如何在IntelliJ IDEA中使用.ignore插件忽略不必要提交的文件 问题:最近 ...

  6. Git与GitHub学习笔记(八)git如何同时同步提交到码云和GitHub上

    前言: 今天github push代码一直push不上去,打算就备份一份代码带国内开源码云上. Github容易出现的情况是: 国内访问速度比较慢, 如果被墙掉的话,就直接没发使用了 如果开源个PHP ...

  7. Git与GitHub学习笔记(五)一次提交失败的记录

    代码已经跟踪了,添加注释说明,但是总是添加不了 error: pathspec 'live-page'' did not match any file(s) known to git. 重复了好多遍, ...

  8. Git与GitHub学习笔记(六)使用 Github Pages 管理项目文档

    前言 你可能比较熟悉如何用 Github Pages 来分享你的工作,又或许你看过一堂教你建立你的第一个 Github Pages 网站的教程.近期 Github Pages 的改进使得从不同的数据源 ...

  9. Git与GitHub学习笔记(一)如何删除github里面的文件夹?

    按照以下步骤即可(本地删除) 1. git pull you git url2. git checkout 3. rm -r dirName4. git add --all5. git commit  ...

随机推荐

  1. 内存不足(OutOfMemory)的调试分析

    32位操作系统的寻址空间是4G,其中有2G被操作系统占用,也就是说留给用户进程的内存只有2G(其中还要扣除程序加载时映像占用的部分空间,一般只有1.6G~1.8G左右可以使用). 如果进程运行中需要申 ...

  2. ibatis基本内容简介

    iBATIS一词来源于“internet”和“abatis”的组合,是一个由Clinton Begin在2002年发起的开放源代码项目.于2010年6月16号被 谷歌托管,改名为MyBatis.是一个 ...

  3. 博客标题栏增加一个"闪存“按钮

    最近来博客园喜欢去闪存上看看,也就是一个类似微博的东西,但是貌似没看到哪里有这个按钮. 所以只要自己动手搞一个. 暴力猴js: // ==UserScript== // @name fwindpeak ...

  4. Visual Studio 2015 和 Apache Cordova

    英文原版:http://www.codeproject.com/Articles/860150/Visual-Studio-and-Apache-Cordova 在开始前,问一下自己下面这些问题: 熟 ...

  5. Codeforces Gym 100231B Intervals 线段树+二分+贪心

    Intervals 题目连接: http://codeforces.com/gym/100231/attachments Description 给你n个区间,告诉你每个区间内都有ci个数 然后你需要 ...

  6. C#封装、多态、抽象、接口、匿名方法等学习

    1:封装 将对象进行封装,并不等于将整个对象完全包裹起来,而是根据实际需要,设置一定的访问权限,用户根据不同的权限调用对象提供的功能,在C#语言中,可以使用修饰符public.internal.pro ...

  7. linux C(hello world)程序调试

    程序的调试(先得安装gdb工具,以root身份执行命令:sudo apt-get install gdb) 程序的调试是一个很重要的环节,windows IDE下那些强大的调试功能,Linux以什么来 ...

  8. [ES6] 15. Generators -- 2

    Using for..of statement: function* greeting(){ console.log(`Generators are "lazy"`); yield ...

  9. Sharepoint 列表ItemAdding事件判断文件类型、获取当前上传的文件

    using System; using System.Security.Permissions; using Microsoft.SharePoint; using Microsoft.SharePo ...

  10. V8::Arguments中This和Holder的区别

    ## v8::Arguments namespace v8 { class Arguments { public:  inline int Length() const;  inline Local& ...