git笔记

SVN是集中式版本控制系统,版本库是集中放在中央服务器的。Git是分布式版本控制系统,没有中央服务器。
git remote add origin git@github.com:HowellHu/learn_git.git 把一个已有的本地仓库与GitHub关联
分布式版本系统的最大好处之一是在本地工作完全不需要考虑远程库的存在,也就是有没有联网都可以正常工作,而SVN在没有联网的时候是拒绝干活的!当有网络的时候,再把本地提交推送一下就完成了同步。
fork是将别人的项目拷贝到自己目录下,并为此建立一个仓库

https://blog.csdn.net/Mr_JavaScript/article/details/83787333
https://git-scm.com/book/zh/v2/Git-%E5%9F%BA%E7%A1%80-%E8%8E%B7%E5%8F%96-Git-%E4%BB%93%E5%BA%93

git init 产生.git文件夹,记录所有的变更
git add加入到暂存区,git add .是将所有的都加入到暂存区
git checkout -- <file> 会用暂存区全部或指定的文件替换工作区的文件。这个操作很危险,会清除工作区中未添加到暂存区的改动。
git commit -m "(描述语)" 提交到仓库
git log查看提交记录

如果已经git add某个文件,又想把它撤回,不commit,则需要get reset (文件名)
文件有四种状态:untracked,unmodified,modified,staged。
git reset (commit id)回滚到某个状态 (将仓库文件替换暂存区的文件),checkout表示用暂存区全部或指定的文件替换工作区的文件
或者git reset HEAD~n(向前回滚n次) 表示①移动了HEAD的指向,将其指向上n个快照;②将HEAD移动后指向的快照回滚到暂存区(stage)
reset模式:
--hard HEAD~:移动了HEAD的指向,将其指向上一个快照;将HEAD移动后的指向的快照回滚到暂存区(stage);将暂存区域的文件还原到工作区
--soft HEAD~:移动了HEAD的指向,将其指向上一个快照
--mixed HEAD~:(默认也是--mixed)移动了HEAD的指向,将其指向上n个快照;将HEAD移动后指向的快照回滚到暂存区(stage)

git diff比较暂存区和工作区的不同文件,如果要比较工作区和仓库的不同,可以用git diff HEAD 或者git diff <id>;比较暂存区和仓库的不同,用git diff --cache <id>(<id>可以不用)
git branch查看所有分支
git merge合并分支的变更

删除:本地 rm a.txt
stage区域:git rm a.txt (先手动删除文件,然后使用git rm <file>和git add<file>效果是一样的。)
仓库: git commit -m

git checkout 命令加上 –b参数表示创建并切换,相当于如下2条命令
git branch dev
git checkout dev(切换到dev上面去)
切换后可以用git branch查看各分支,并且星号对应的是当前分支

查看分支:git branch
创建分支:git branch name
切换分支:git checkout name
创建+切换分支:git checkout –b name
合并某分支到当前分支:git merge name
删除分支:git branch –d name

git add命令是个多功能命令,根据目标文件的状态不同,此命令的效果也不同:可以用它开始跟踪新文件,或者把已跟踪的文件放到暂存区,还能用于合并时把有冲突的文件标记为已解决状态等。
我们需要用git add命令来跟踪新文件,但如果使用git commit -am可以省略使用git add命令将已跟踪文件放到暂存区的功能。

git push -u origin master表示把当前分支 master 推送到远程。因为远程库是空的,所以我们在第一次推送 master 分支时,要加上 -u 参数,Git不但会把本地的 master 分支内容推送的远程新的 master 分支,还会把本地的 master 分支和远程的 master 分支关联起来,在以后的推送或者拉取时就可以简化命令(不加-u参数)。
git push <远程主机名> <本地分支名>:<远程分支名>
如果本地分支名与远程分支名相同,则可以省略冒号:
git push <远程主机名> <本地分支名>

git pull <远程主机名> <远程分支名>:<本地分支名>
git pull origin next:master 要取回origin主机的next分支,与本地的master分支合并。如果远程分支(next)要与当前分支合并,则冒号后面的部分可以省略。写成
git pull origin next
git fetch:相当于是从远程获取最新版本到本地,不会自动合并。git pull相当于在 fetch的基础上增加了merge操作。

git tag显示出所有的标签
git tag -a v1.4 -m "my version 1.4" 添加附注级标签
git tag v1.4lw 添加轻量级标签
git show v1.4lw 展示相关信息
git tag -d v1.0 删除标签
git checkout v1.4 切换到1.4的标签

将本地传到远程 git remote add origin https://10.21.155.251/hu-qs/BMS_6.git
git push -u origin master

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

推荐阅读更多精彩内容

  • 目录 Git 笔记系列(一)—— Git简介 Git 笔记系列(二)—— Git工作流程 Git 笔记系列(三)—...
    吃蘑菇De大灰狼阅读 509评论 0 4
  • Git 是目前最流行的分布式版本控制系统之一。 版本控制指的是,记录每次版本变更的内容和时间等细节,保留各版本之间...
    神齐阅读 1,431评论 0 7
  • GIT git init 初始化git仓库,会在目录下生成一个.git的隐藏文件,里面保存着本地库的版本管理信息 ...
    佛系跳伞运动员阅读 501评论 0 0
  • 一.Git简介 Git是世界上最先进的分布式版本控制系统,相对于SVN这样的集中式版本控制系统,Git不需要“中央...
    ahuustcly阅读 729评论 0 0
  • 最近使用Git时感到有些生疏,所以利用晚上空余时间将廖雪峰Git教程重新系统的学习一边并做了笔记,温故知新。 Gi...
    LannisZheng阅读 669评论 1 3