git clone 代码库地址

  git branch -r  查看远程分支

  git branch 查看本地分支

  git branch -a 查看远程和本地分支。带*的表示正在所处分支。

  git branch branch_name  建立一个分支(是在当前分支HEAD上建立)

  git checkout branch_name 切换到另一个分支

  git checkout -b branch_name origin/branch_name    建立和远程分支追踪关系的本地分支

  git checkout -- filename  撤销工作目录的改动(已经在版本管理,但还没提交到暂存区的文件)

  怎样获取远程或本地分支的某个文件到当前分支呢?
  git merge不可以,它只能merge分支
  此时可以使用git checkout 命令。
  git checkout 远程/本地分支名称 指定文件

  这样就可以获取到某分支的指定文件到当前分支了,并且不会发生切换分支。

  git reset HEAD filename 撤销暂存区的改动

  git reset 版本号   回退到某个版本,留有文件修改(例子:文件已经commit到本地版本库,想回退到上一个版本 git reset HEAD^  版本号可在git log中查看)   --hard 硬回退

  一个例子:

    commit了两个提交,并push到了远程库。发现最后一次的commit不对,想回到上一个commit。这时候执行 git reset HEAD^,回到了上一次的版本。这就落后了远端分支一个提交, git log 看是缺少了后悔的那个提交点,这样直接push到远程是不可以的。
    这时候可以执行 git reset origin/xx,同步本地分支和远程分支(但不会丢失本地更改),此时git log可以看到commit点都回来了。然后再git add /commit/push

  git revert HEAD 撤销当前版本的修改,表示回到上一个版本。revert是作为新的commit

  git diff 这个命令可以diff各种不同

  git diff 默认是比较当前工作目录和暂存区(git必须要知道暂存区的概念)的不同

  git diff --cached 比较暂存区和版本库的不同

  git diff HEAD 比较工作目录和版本库的差异

  git diff --stat  只看统计哪些文件差异,不看具体内容差异

  git diff HEAD origin/branch_name  filename  比较当前分支和远程分支上这个file的不同

  git add

  git commit -m 'xx'

  git log  查看commit信息

  git log --pretty=oneline 很多个commit信息,直接查看commit id,比较方便

  如果查看某一个文件的修改历史,可以这样:

   git log filename  (git log --pretty=oneline filename) ,通过列出的commitid,再执行git show commitid,查看具体修改历史

  git show commitid 查看某次提交的信息

  git branch --set-upstream master origin/master   设立追踪关系 本地和远程分支

  git pull 远程名 远程分支名称:本地分支名称

  省略本地分支名,表示当前所在分支;

  如果建立了追踪关系,可以省略分支名称

  git push 远程名 本地分支名称:远程分支名称

  如果省略远程分支名称,就是把本地分支推送到远程,如果没有,就在远程新建;如果只省略本地分支,表示删除远程分支。

  如果有追踪关系,可以省略俩名称

  git merge branchname  在当前分支上合并branchname

  git tag tagname 在当前分支的commit版本上打一个tag。tag和某个commit id对应的

  git tag 查看各个tag

  git show tagname 查看该tagname信息

  git stash [save message] 保存当前进度,工作区恢复到当前HEAD版本内容。很方便于当前改的东西存档,去fix其他东西。

  git stash list 查看stash的列表

  git stash pop 弹出最新的stash。比如修复完,回到之前改的。

  在开发过程中,有可能产生附带的缓存文件,在部署到服务器时是没用的。此时可以在版本库中添加一个.gitignore文件。

  比如以.dat为后缀的文件不想要提示是否添加了。在.gitignore文件中行内容写上.dat即可。

  如果不希望自己的.gitignore文件上传,可以在该文件再追加一行.gitignore。

  git的命令可以使用别名简化,比如每次git commit,checkout等,单词较长。可以给他们起个别名。

  在.git/config文件中添加。比如几个命令:

[alias]
co = checkout
ci = commit
br = branch
st = status

在.git/config中配置,只是在当前git代码库生效,如果该用户下都生效,需要在~/.gitconfig 中配置,或者命令如git config --global即可

比如:

git diff如何使用vimdiff形式查看diff文件?

git config --global diff.tool vimdiff
git config --global difftool.prompt false
git config --global alias.d difftool

利用git d 执行即可

git使用备注的更多相关文章

  1. Git版本控制使用介绍

    Git是什么? Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git与SVN的最主要的区别? Git是分布式的,SVN不是 Git没有一个全局的版本号,而SVN有 ...

  2. Git 常用配置和使用

    Git:是一个分布式的源代码管理工具,Linux内核的代码就是用Git管理的所以它很强,也很快, 和 Vss/SVN比起来 本地Git初始化配置及其使用: 1. 初始化本地Git库:打开Git Bas ...

  3. git增加子模块

    要拉取GIT代码时,有时候需要拉取多个GIT模块,一起配合使用: 1.下载主模块: git clone -b master http://username:passwd@git.wondershare ...

  4. 【Git】Git pull 强制覆盖本地文件

    git fetch --all  git reset --hard origin/master git pull 备注: git fetch 只是下载远程的库的内容,不做任何的合并 git reset ...

  5. 将本地项目上传到git

    1.新建一个README.md的文件,并将项目名写入此文件(一般第三方git服务会在创建在创建项目的时候自动创建该文件,可以跳过这一步) echo "# Lee" >> ...

  6. Windows配置多个git用户

    Window配置多个Git账户,SSH连接GitHub.GitLab 最新版本GIt配置对应多个Git仓库(不需要添加多个用户名和邮箱): 在本地git上添加一个用户名和邮箱,生成一对公钥和私钥,把公 ...

  7. Git学习(一)(2015年11月12日)

    环境:win10 已安装git工具(如未配置环境变量需先配置环境变量) 如何配置环境变量:.我的电脑-属性-高级系统设置-环境变量-系统变量 找到path然后在变量值结尾增加路径: ;C:\Progr ...

  8. git创建项目的两种方式

    场景1: 将本地内容推送给远程库 1.创建版本库 git init 将此目录转换为git可管理的仓库 git config --global user.name "xx" 或 gi ...

  9. 认识GIT之入门

    前言 GIT是非常优秀的源代码版本管理工具,经过几年的发展,已经变得非常成熟以及流行,不同于其他的源代码管理系统,值得使用.GIT官网下载在线安装包,经常会中途退出,很有可能的原因是被墙了,所以建议使 ...

随机推荐

  1. 【代码笔记】Web-利用Dreamweaver实现表格

    一,打开Dreamweaver---->File---New---->如下图所示.选择HTML,点击OK. 二,会出现如下图所示界面.把光标放到Body处. 三,Insert---> ...

  2. 【工具相关】web-HTML/CSS/JS Prettify的使用

    一,打开Sublime Text,代码如下面所示. 二,鼠标右键--->HTML/CSS/JS Prettify--->Prettify Code.代码如图所示,明显的代码变得整齐了.

  3. U8 应付款管理 单据类型 分析

    Ap_CloseBill   收付款单主表 Ap_CloseBills 收付款单子表 cVouchType 在收付款单主表中  ,用于区分单据为收款单还是付款单(48,49)  49:付款单 48:收 ...

  4. (网页)Java日志记录框架Logback配置详解(企业级应用解决方案)(转)

    转自CSDN: 前言 Logback是现在比较流行的一个日志记录框架,它的配置比较简单学习成本相对较低,所以刚刚接触该框架的朋友不要畏惧,多花点耐心很快就能灵活应用了.本篇博文不会具体介绍Logbac ...

  5. JavaScript大杂烩15 - 使用JQuery(下)

    前面我们总结了使用各种selector拿到了jQuery对象了,下面就是对这个对象执行指定的行为了. 2. 操作对象 - 行为函数action 执行jQuery内置的行为函数的时候,JQuery自动遍 ...

  6. Jmeter中默认语言的显示

    1.临时性语言的设置 即设置后只对本次使用有效,重启后恢复默认语言 选择Options—>Choose Language—>选择其他语言(例如:Chinese(Simplified)简体中 ...

  7. Access删除某一字段重复的数据但是要保留一条

    如下图所示,Checktime这个字段有很多重复数据,我需要把所有Checktime这个字段重复的都删掉,但是还需要保留一条: 在Access做删除查询怎么做呀,来个Access高手,复制粘贴党请手下 ...

  8. 如何使用C语言的面向对象

    我们都知道,C++才是面向对象的语言,但是C语言是否能使用面向对象的功能? (1)继承性 typedef struct _parent { int data_parent; }Parent; type ...

  9. EaseType 缓动函数

    EaseType(动画曲线) EaseType 缓动函数或者我习惯叫它动画曲线,在很多的软件或动画中都有涉及到,下面是摘取的一些资料: 缓函数图例 Tween效果 每一幅图像当鼠标移上去,会有路径效果 ...

  10. office(Word、Excel、PPT等图标异常和桌面无新建解决方案)

    前言吐槽: 前不久因为安装了WPS,然后觉得不好用卸载WPS装回office就出现了一个很恶心的问题:word文档.excel文档.PPT这些办公软件图标异常,显示的是下面这样: 打开倒是可以正常用w ...