git 使用心得

1.Git 是目前世界上最先进的分布式版本控制系统

2.与SVN区别是,集中式,版本放在中央库

3.windows安装git

    msysgit是windows版本的git

4.git是分布式版本控制系统,所以需要填写用户名和邮箱名作为日标记

    git config --global user.name ""
    git config --global user.email""
    配置全局的git

5.操作

创建版本库
选好文件夹作为git本地仓库
     git init  创建本地仓库
     git add file.txt   提交到缓存
    git cmmit -m '注释'   提交到当前分支上
      git status 查看当前仓库状态
      git diff file.txt  查看修改的内容
      git log 查看历史修改记录
      git log --pretty=oneline  单行显示
git reset --hard HEAD^  回退到上一个版本
git reset --hard HEAD^ 回退到上上个版本
git reset --hard HEAD~100 到上100个版本    cat file.txt 查看文件内容
git reset ---hard 版本号
如果关掉命令行找不到版本号
git reflog

6.工作区与暂存区的区别

工作区就是电脑上的目录
版本库 .git 其中有stage暂存区,自动创建的分支master,指向master的指针

git checkout  -- file
丢弃工作区的修改
添加到暂存区的内容不被撤销
删除文件
rm file
不想删除
git checkout -- file (恢复)
git commit - m "" 提交删除(彻底删除)

7.远程仓库

SSH加密
创建SSH Key 用户主目录下 .ssh 目录 (id_rsa私匙和id_rsa.pub公匙)

ssh-keygen  -t rsa --C ‘’email"

在github Add SSH Key里粘贴id_rsa.pub 文件的内容

7.1关联远成仓库

1.github上创建一个新的仓库,全部默认,作为空仓库

git remote add origin ....git
git push -u origin master
-u命令,不但会把本地的master分支内容推送到远程新的master,还会把本地的master分支和远程的master分支关联起来,以后推送或拉取时可以简化命令

2.github上创建的仓库含有reademe.md文件的

需要将远程分支上的内容clone下来
git clone remotebranch
7.2创建与合并分支

git每次提交都会把他们串成一条时间线,这条线就是一个分支,Git里叫主分支,master,HEAD指向master,master指向提交,HEAD只想的就是当前分支

git checkout -b ng  创建并切换分支
=git branch ng(创建分支) +git checkout ng(切换分支)  
在ng分支上做完修改在master分支上不可见
git merge ng 
将ng上修改的内容合并到主分支master上
删除分支
git branch -d ng

冲突问题
在不同分支上修改同一个文件会产生冲突
<<<HEAD指主分支  
 =======  
>>>ng 分支

手动解决冲突,master上commit然后删除分支


fast forward 新建一个分支做修改后,切换回主分支master,master未作修
改时进行合并就叫fast forward
当直接merge时 ,删除分之后没有分支信息

git merge --no-ff -m "注释,分之合并信息" 分支      加入分支信息

临时插入的工作,修复bug

分支上的工作没有完成时

临时停下当时分支上的工作,无法提交的时候(貌似用处不大)

git stash  当前分支就是干净的了
原理是将当前工作区的内容保存到栈里

切换到master 建立分支修复bug

修复完后需要切换回分支继续工作
git stash list 显示Git栈内的所有备份,可引用这个列表来决定从哪个地方恢复
git stash apply (恢复到最近一次保存,不删除站内的内容)
git stash apply stash@{0}(恢复到某次保存)
git stash pop 从栈中读取最近一次保存的内容,恢复工作区的相关内容(并删除栈中本次记录)
git stash clear 清空git 栈
git stash drop 删除一条

多人协作

当从远程库克隆时,Git自动把本地的master分支和远程的master分支对应起来,并且远程库的默认名称是origin

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

推荐阅读更多精彩内容

  • 1.git的安装 1.1 在Windows上安装Git msysgit是Windows版的Git,从https:/...
    落魂灬阅读 12,655评论 4 54
  • 1. 安装 Github 查看是否安装git: $ git config --global user.name "...
    Albert_Sun阅读 13,645评论 9 163
  • 声明:这篇文章来源于廖雪峰老师的官方网站,我仅仅是作为学习之用 Git简介 Git是什么? Git是目前世界上最先...
    横渡阅读 3,946评论 3 27
  • 现在的大多数APP都带有缓存功能,尤其是使用一些第三方框架,比如SDWebImage 就自带缓存功能。当用了一段时...
    MRNAN_阅读 318评论 0 1
  • 我向你祈求知识 在人面前却显示出愚拙; 我向你祈求爱情 却一次次被人拒绝; 我向你祈求专心 心里塞满世俗杂念; 久...
    路得燕子阅读 176评论 0 0