01-Git入门 (配置) 以及git init、git add、git commit -m三个命令的介绍及用法

人之所以喜欢追忆过往,主要因为时光无法倒流,一切的美好和不如意都成云烟,美好不能重复,遗憾无法弥补,所以当下时光千金不易,诸君共勉,只求了无遗憾。人生虽然不能重复,但GIT可以在我们人生中实现部分时光倒流效果,比如可以让程序员方便的保存代码的版本,并且能够快速的切换到指定的版本,如果新代码出现错误,可以再次回到过去,如同通关游戏,打到某个比较好的战绩可以保存一下,防止失败后,又要重新开始。

一.Git与GitHub的区别:

1.Git是一款软件,利用它可以对本机的文件进行版本管理。
2.GitHub是一个商业网站,可以作为一个Git服务器,通过web界面来进行一些Git执行操作。
可以认为Git与GitHub的关系就如同USB与USBHub的关系。


二.Git与GitHub配合使用:

Git可以与GitHub配合使用,以实现代码共享与合作开发,这也是为什么他两者会被混淆的原因之一。

三.配置Github:

  1. 进入 https://github.com/settings/keys
  2. 如果页面里已经有一些 key,就点「delete」按钮把这些 key 全删掉。如果没有,就往下看
  3. 点击 New SSH key,你需要输入 Title 和 Key,Titile意思是自己的设备备注名,比如你在家和公司用的是不同的电脑,为了区分你可以给他们的title写一下。如果你现在没有 key,请继续看下面的步骤。
  4. 打开 Git Bash (iterm2)
  5. 复制并运行 rm -rf ~/.ssh/* 把现有的 ssh key 都删掉,这句命令行如果你多打一个空格,可能就要重装系统了,建议复制运行。
  6. 运行 ssh-keygen -t rsa -b 4096 -C "你的邮箱",注意填写你的邮箱!
  7. 按回车继续,中间有一个需要输入y的地方,输入一下继续,然后再按三次,直到出现一堆泡泡状符号,表示成功。见下图。

    成功后会在home目下下的.ssh文件夹生成一些文件( 可以查看详细),其中包含 id_rsa 和 id_rsa_pub ,其中id_rsa就相当于你的指纹钥匙,id_rsa_pub就是相当于锁,我们需要做的就是要cat 一下这个id_rsa_pub文件,将其中的密匙上传到githubSSH keys / Add new页面中的Key栏里。
  1. 运行 cat ~/.ssh/id_rsa.pub,得到一串东西,完整的复制这串东西
  2. 回到上面第 3 步的页面,在 Title 输入「这里输入任意名字,通常为设备+地点比较好一些。例如 Imac_Commpany
  3. 在 Key 里粘贴刚刚你你复制的那串东西
  4. 点击 Add SSH key
  5. 回到 Git Bash (iterm2)
  6. 运行 ssh -T git@github.com,你可能会看到这样2种提示:1种是你第一次用你这个电脑的IP+密匙访问github,他会问你是否要连接,然后会有yes和no的选项。这里要输入yes,注意是yes,yes,yes,不是y,重要的事情说三遍,以便于自己能自己能记忆清楚。

(拓展: 其实电脑密匙+ip的访问记录都存储在了本地的 ~/.ssh/known_hosts文件中,如果我们把这个文件删除了,则会必然出现询问你第一次访问yes or no 的情况。删除命令为 rm ~/.ssh/known_hosts)


  1. 然后如果你看到 Permission denied (publickey). 就说明你失败了,请回到第 1 步重来,是的,回到第 1 步重来;如果你看到 Hi 某某某! You've successfully authenticated, but GitHub does not provide shell access. 就说明你成功了!

SSH key终于添加好了,想了解原理就看这篇 文章

配置 git

>git config --global user.自己的英文名    # 让别人知道你是谁
git config --global user.自己的邮箱     # 如果你写出了bug,这个邮箱就是别人来找到你来骂你的
git config --global push.default simple    # 本来是 matching,不过可能 simple 更好
git config --global core.quotepath false  #防止文件名变成数字
git config --global core.editor "vim"    # 使用vim编辑提交信息

五句话,依次运行。不执行的话,电脑可能会爆炸你信不信。


使用 git

使用 git 有三种方式,主要有:

  1. 只在本地使用
  2. 将本地仓库上传到 GitHub
  3. 下载 GitHub 上的仓库

我们先创建一个本地的空目录( ~ 指的是/User/mengkunpeng,~ 下的目录都是自己的文件,所以创建文件夹一定要创建在 ~ 的层级下),代码为

mkdir ~/git-demo-1



然后进入这个目录
然后进入这个目录
然后进入这个目录
然后进入这个目录
然后进入这个目录

cd ~/git-demo-1

如果你不进入这个目录,电脑会将你当前停留在的目录当做git仓库而将当前目录整个个上传到github

然后进行初始化

仓库初始化 git init

git init

我们创建一些文件

touch index.html

然后我们输入

git status -sb//这里来透露一下 git status -sb 是什么意思:git status 是用来显示当前的文件状态的,哪个文件变动了,方便你进行 git add 操作。-sb 选项的意思就是,SB都能看懂,哈,这是开玩笑,-s 的意思是显示总结(summary),-b 的意思是显示分支(branch),所以 -sb 的意思是显示总结和分支。

我们要经常使用这句来查看git仓库中各种文件的状态。
当我们执行这句git status -sb的时候,它就会帮我们列出当前git仓库的这些文件的状态:

  1. 刚创建的文件(非目录)会出现?? 意思是git不明白我们这几个文件将要执行什么操作。
  2. 已经add了的文件,就会变成一个绿色的A
  3. 如果里面包含空文件夹,则git status -sb会跳过空文件夹(熟视无睹)
  4. 还有文件修改了的话,执行这句话会出现靠右的M标记,如果我们将刚才修改的文件添加到add提交区,再次执git status -sb那么靠右的M标记就会变成靠左的M

mkdir css //创建css文件夹
touch css/style.css //在css文件夹内添加 style.css文件

添加文件到索引(暂存区) git add

git add index.html //将index.html添加到索引(暂存区)
git add css//将css文件夹及包含的所有文件添加到索引(暂存区)

git commit -m "第一次提交" //将添加到索引(暂存区)的文件提交到本地的git仓库,这样你想恢复的时候,它就可以从仓库里拿出来。

正式提交」到本地仓库 git commit -m

git commit -m 是将你 add 过的内容「正式提交」到本地仓库(.git就是本地仓库),并添加一些注释信息,方便日后查阅
你可以一个一个地 commit
git commit index.html -m '添加index.html'
git commit css/style.css -m "添加 css/style.css"
你也可以一次性 commit
git commit . -m "添加了几个文件"

history //查看我们刚才都做了什么

我们这里改一下文件,看下一系列的操作过程。

open css/style.css //打开style.css

打开后编辑,在里面写入body {corlor: red}
运行一下git status -sb查看状态,发现css文件有一个红色靠右的标记
这说明这个文件比上次已经有了改动,有了改动我们就要将它添加到索引,添加到索引(暂存区)的文件才可以提交(commit),所以我们执行

git add css// 再次将css及其内部文件提交到索引区

运行一下git status -sb//发现刚才的靠右的红色M变成了靠左的绿色M,表示文件已经添加到了索引区。


总结一下用到的命令

git init,初始化本地仓库 .git
git status -sb,显示当前所有文件的状态
git add 文件路径,用来将变动加到暂存区
git commit -m "信息",用来正式提交变动,提交至 .git 仓库
如果有新的变动,我们只需要依次执行 git add xxx 和 git commit -m 'xxx' 两个命令即可。
git log 查看变更历史

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

推荐阅读更多精彩内容