git笔记

配置

  • 查看配置信息:git config --list
  • 直接查看某个环境变量的设定:git config user.name git config user.email
  • 查看git版本:git --version
  • 安装git: sudo apt-get install git
  • 配置名字:git config --global user.name "Your Name"
  • 配置邮箱:git config --global user.email "email@example.com"

克隆、提交代码

  • git clone git@gitmobile.blued.cn:blued_mobile/git_test.git :从远程仓库克隆
  • git clone <repo> <directory> :克隆到指定的目录
  • git status :查看仓库当前的状态
  • git status -s :获得简短的结果输出
  • git pull --rebase :更新代码,rebase参数可以保证你即使进行了commit操作也不会额外生成一次快照
  • git diff :尚未缓存的改动
  • git diff --cached :查看已缓存的改动
  • git diff HEAD :查看已缓存的与未缓存的所有改动
  • git diff --stat :显示摘要而非整个 diff
  • git add readme.txt :添加文件修改到暂存区
  • git add * :添加多个文件修改到暂存区
  • git reset HEAD <file> :暂存区的目录树会被重写,被 master 分支指向的目录树所替换,但是工作区不受影响
  • git rm --cached <file> :直接从暂存区删除文件,工作区则不做出改变
  • git checkout . git checkout -- <file>... :用暂存区全部或指定的文件替换工作区的文件
  • git checkout HEAD . git checkout HEAD <file> :用 HEAD 指向的 master 分支中的全部或者部分文件替换暂存区和以及工作区中的文件
  • git commit -m "提交日志" :将缓存区内容添加到仓库中
  • git commit -a :如果你觉得 git add 提交缓存的流程太过繁琐,Git 也允许你用 -a 选项跳过这一步。例如:git commit -am '修改 hello.php 文件'
  • git push origin master/develop/feature :将代码提交到远程分支
  • git reset --hard HEAD~1:恢复到之前的commit,1代表数量
  • git reset --hard commitID:恢复到指定的commitID,这个命令比较危险,会把这条commitID之后的全部覆盖
  • git push --force:恢复到某个commitID重新提交到远端
  • 使用sourceTree可以撤销任何指定的提交记录,同样需要再提交一次。
  • git reset --hard e71ea349648eab13afa015f5cce5e7d0096625b4 :回退到指定版本
  • git stash / git stash pop:保存当前本地的修改,无需提交到缓存区
  • git cherry-pick c492aa9: 提交摸个节点到当前分支

branch

  • git branch :查看当前分支。
  • git branch -r :查看远程所有的分支。
  • git branch -a :查看本地和远程所有的分支。
  • git branch xx :创建分支
  • git branch -d xx :删除分支
  • git branch -D xx :强制删除分支
  • git checkoup xx :切换到分支
  • git checkout -b xx :创建并切换到当前分支
  • git merge b1 :合并分支b1到当前分支,需要b1在本地已拉取
  • vim 冲突文件 :当merge冲突时,需要手动解决冲突
  • git add 解决冲突后的文件 :解决完毕后需要再次添加
  • git cherry-pick 5b531cb8c62cdb8b5f10c406e41824a6388e3a82 6b531cb8c62cdb8b5f10c406e41824a6388e3a82:从另外一个分支里面挑选一些commit到当前分支

提交历史

  • git log :回顾下提交历史
  • git log 分支名/tag名/远程分支名 :指定log
  • git log --oneline :查看历史记录的简洁的版本
  • git log --graph :查看历史中什么时候出现了分支、合并
  • git log --reverse --oneline :逆向显示所有日志
  • git log --author :查找指定用户的提交日志,例如:git log --author=Linus --oneline -5
  • --since--before :指定日期,例如git log --oneline --before={3.weeks.ago} --after={2010-04-18} --no-merges
  • --no-merges :隐藏合并提交
  • git reflog :查看每一次命令

标签

  • git tag -a v1.0 :创建一个带注解的标签
  • git tag -d v1.1 :删除标签
  • git tag -a v0.9 85fc7e7 :追加标签
  • git tag :查看所有标签
  • git show v1.0 :查看此版本所修改的内容
  • git checkout v1.0:切换到某个tag节点。-f强制切换
  • git push origin --tags: 将标签推送到origin分支
  • git push origin --delete tag <tagname>删除远程tag
  • 可以基于某个tag拉取分支进行代码提交

协作

  • 查看可以抓取和推送的远程地址:git remote -v

子模块

  • git submodule init:初始化
  • git submodule update:更新

示意图

  • 一个团队,理想情况下的分支是这样的:
    团队协作

上一篇:UISearchBar常用属性
下一篇:iOS图片滤镜

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,835评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,598评论 1 295
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,569评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,159评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,533评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,710评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,923评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,674评论 0 203
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,421评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,622评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,115评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,428评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,114评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,097评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,875评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,753评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,649评论 2 271

推荐阅读更多精彩内容

  • 1,查看所有远程分支:%git branch -r 2, 拉取远程分支并创建本地分支git checkout -...
    will666阅读 2,004评论 0 18
  • Git 基础 基本原理 客户端并不是只提取最新版本的文件快照,而是把代码仓库完整的镜像下来。这样一来,任何一处协同...
    __silhouette阅读 15,765评论 5 147
  • git常用命令 GIT常用命令备忘:http://stormzhang.com/git/2014/01/27/gi...
    新篇章阅读 8,384评论 1 26
  • 参加了今天的晨会我的收获是: ①成功的人和普通人之间最大的差别不在于天赋,而在于坚持力。 ②爱的环境使人美好,如果...
    爱你的Lisa阅读 147评论 0 0
  • 2016年的可用余额仅剩15天,而我也终于在今天写好了2017的年度计划。如果想要在下一年做出一番改变的你在此时陷...
    5ffe9e6d0cf2阅读 1,776评论 47 199