初始化

git init    

— cd到目录,初始化仓库

git init name

— 新建文件,并初始化仓库

.gitignore   

— 忽略文件(https://github.com/github/gitignore)

git config —global credential helper store

— 记录提交的密码进行缓存

------------------------------------------------------------------------------------------------------------ 

远程仓库

git remote -v

-- 查看所有远程仓库

git remote

-- 

------------------------------------------------------------------------------------------------------------

重命名

git mv oldname newname

— 重命名文件

mv oldname newname

git add .

— 重命名文件 ,新增至暂存区

------------------------------------------------------------------------------------------------------------ 

日志

git log --all

— 所有分支日志

git log -p -2 dev

— dev 分支最新提交日志 对比信息

git log  --stat

— 简要信息

git log --pretty=oneline

— 显示成一行

git log -n4

— 当前分支就近的4个

git log --all -n4

— 所有分支的就近的4个

git log -n4 dev

— dev 分支下的就近4个

git log --oneline

— 简洁日志

git log --graph

— 图形化入日志

gitk

— 图形化工具

------------------------------------------------------------------------------------------------------------

暂存区

git add 文件 

— 文件添加至缓存区

git add .

— 新建的文件、修改的文件、删除的文件,添加至缓存区

 git add -u

— 将已跟踪的文件(修改、删除),添加至缓存区

git add -A

git add -all

git add -a

— 新建的文件、修改的文件、删除的文件,添加至缓存区

------------------------------------------------------------------------------------------------------------

分支

git branch -a

— 查看本地分支情况,远程分支情况

git branch -av

— 查看本地分支 以及相互关系

git checkout branchName 

— 切换分支

git checkout -b newBranch

— 从当前本地分支  创建分支,并切换到新分支

— 复制当前分支,命名为 newBranch

git checkout -b newBranch otigin/branch

— 从远程分支检出到新分支

git branch -d <branchname>

— 删除分支

git branch -D <branchname>

— 强制删除分支

git ls-remote 

— 远程分支信息

------------------------------------------------------------------------------------------------------------ 

提交

git commit -m "备注"

— 提交到待推送区域

git commit -am "备注"

— 添加到暂存区,并提交到待推送区域

git commit --amend

— 修改当前分支,最近一次提交的备注

------------------------------------------------------------------------------------------------------------ 

比较

git diff --catch

— 暂存区 和 HEAD比较

gti diff

— 工作区 和 暂存区 比较

git diff HEAD

— 工作区 和 HEAD比较

------------------------------------------------------------------------------------------------------------ 

撤销

 git  reset  --hard

— 暂存区、工作区 恢复成 HEAD

git reset --hard 23ur9wi

— HEAD 指向这个commit,同时 缓存区、工作区内容也恢复到这个commit

git reset HEAD 

— 缓存区与HEAD一样

git checkout  .

— 工作区 与 缓存区一样

git checkout HEAD .

— 工作区、缓存区 和 HEAD一样

git checkout HEAD <filename>

— 检出当前分支提交的最新版本

— 覆盖 暂存区,即撤销暂存区

— 覆盖 工作区,撤销修改

------------------------------------------------------------------------------------------------------------ 

删除

git rm 文件 --hard HEAD

— 删除文件,工作区和缓存区恢复到HEAD

git rm --cached <firename>

— 删除 已提交的跟踪文件

 ------------------------------------------------------------------------------------------------------------ 

打标签

------------------------------------------------------------------------------------------------------------ 

 分离头指针

根据某一个 commit 检出

现在就处于分离头指针的情况下,HEAD -> commit

Git实际使用的更多相关文章

  1. Git 子模块 - submodule

    有种情况我们经常会遇到:某个工作中的项目需要包含并使用另一个项目. 也许是第三方库,或者你 独立开发的,用于多个父项目的库. 现在问题来了:你想要把它们当做两个独立的项目,同时又想在 一个项目中使用另 ...

  2. Git 在团队中的最佳实践--如何正确使用Git Flow

    我们已经从SVN 切换到Git很多年了,现在几乎所有的项目都在使用Github管理, 本篇文章讲一下为什么使用Git, 以及如何在团队中正确使用. Git的优点 Git的优点很多,但是这里只列出我认为 ...

  3. Git与Repo入门

    版本控制 版本控制是什么已不用在说了,就是记录我们对文件.目录或工程等的修改历史,方便查看更改历史,备份以便恢复以前的版本,多人协作... 一.原始版本控制 最原始的版本控制是纯手工的版本控制:修改文 ...

  4. Git Bash的一些命令和配置

    查看git版本号: git --version 如果是第一次使用Git,你需要设置署名和邮箱: $ git config --global user.name "用户名" $ gi ...

  5. 在Ubuntu 16.10 安装 git 并上传代码至 git.oschina.net

    1. 注册一个账号和创建项目 先在git.oschina.net上注册一个账号和新建一个project ,如project name 是"myTest". 2.安装git sudo ...

  6. 史上最详细git教程

    题外话 虽然这个标题很惊悚,不过还是把你骗进来了,哈哈-各位看官不要着急,耐心往下看 Git是什么 Git是目前世界上最先进的分布式版本控制系统. SVN与Git的最主要的区别 SVN是集中式版本控制 ...

  7. [版本控制之道] Git 常用的命令总结(欢迎收藏备用)

    坚持每天学习,坚持每天复习,技术永远学不完,自己永远要前进 总结日常开发生产中常用的Git版本控制命令 ------------------------------main-------------- ...

  8. 【解决方案】Myeclipse 10 安装 GIT 插件 集成 步骤 图解

    工程开发中,往往要使用到集成GIT ,那么下面说说插件安装步骤 PS:以Myeclipse 10 为例,讲解集成安装步骤. ----------------------main------------ ...

  9. git 命令

    切换仓库地址: git remote set-url origin xxx.git切换分支:git checkout name撤销修改:git checkout -- file删除文件:git rm  ...

  10. git亲测命令

    一.Git新建本地分支与远程分支关联问题 git checkout -b branch_name origin/branch_name 或者 git branch --set-upstream bra ...

随机推荐

  1. 25个让Java程序员更高效的Eclipse插件

    Eclipse提供了一个可扩展插件的开发系统.这就使得Eclipse在运行系统之上可以实现各种功能.这些插件也不同于其他的应用(插件的功能是最难用代码实现的).拥有合适的Eclipse插件是非常重要的 ...

  2. 11. 将博客部署到tomcat上

    springboot项目既可以以jar运行,也可以做成war包放到服务器上,因为我的博客项目涉及到文件上传,所以按照jar的方式就不可行,需要部署到tomcat上,具体做法如下:1. 修改pom.xm ...

  3. Python中str()与repr()函数的区别

    在 Python 中要将某一类型的变量或者常量转换为字符串对象通常有两种方法,即str()或者 repr() . >>> a = 10 >>> type(str(a ...

  4. RabbitMQ分布式集群架构和高可用性(HA)

    (一) 功能和原理 设计集群的目的 允许消费者和生产者在RabbitMQ节点崩溃的情况下继续运行 通过增加更多的节点来扩展消息通信的吞吐量 1 集群配置方式 RabbitMQ可以通过三种方法来部署分布 ...

  5. 开机出现loading (hd0)/ntldr。。。

    电脑一开机就出现ntldr is missing的原因:1.操作系统文件损坏.2.MBR表损坏.3.硬盘数据线松了.4.硬盘坏了.解决方法:1.重新安装操作系统.2.用U盘或光盘引导,进入PE系统,用 ...

  6. dnscache --源码笔记

    ) } } //通过net包 解析域名对应的ip集合 func (r *Resolver) Lookup(address string) ([]net.IP, error) { ips, err := ...

  7. 【BZOJ 3561】 DZY Loves Math VI

    题目: 给定正整数n,m.求   题解: 水题有益身心健康.(博客园的辣鸡数学公式) 其实到这我想强上伯努利数,然后发现$n^2$的伯努利数,emmmmmm 发现这个式子可以算时间复杂度,emmmmm ...

  8. bzoj2120 数颜色 分块

    分块大法好 orz 处理出每个点的前驱和后继位置. 暴力修改,查询就在每个整块里查询pre<l的,暴力跑两边就好了 #include<cstdio> #include<cstr ...

  9. centos7 安装qt

    /出现can't find lGL,安装下面的库: yum install libGL yum install libGL-devel ​

  10. 教你如何使用Java手写一个基于链表的队列

    在上一篇博客[教你如何使用Java手写一个基于数组的队列]中已经介绍了队列,以及Java语言中对队列的实现,对队列不是很了解的可以我上一篇文章.那么,现在就直接进入主题吧. 这篇博客主要讲解的是如何使 ...