美文网首页Git
Git之不明觉厉1-基本操作和概念

Git之不明觉厉1-基本操作和概念

作者: 转角遇见一直熊 | 来源:发表于2016-03-03 11:35 被阅读289次

不明觉厉的git

在虚拟的计算机世界,git让我们体会到了一种不一样的感觉,也许是那种不明觉厉的高深莫测。

什么是git

Git is a DISTRIBUTED VERSION CONTROL SYSTEM (DVCS)

Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

DVCS和CVCS的区别

下面这个图是svn的仓库,有一个中心仓库,所有的人都需要去往这个仓库里面提交代码,新的代码也需要从仓库中获得。

Paste_Image.png

下面这个是git的模式,每一个人都有完整的仓库,虽然下面的图中还是有一个中心仓库,但是不是必须的,每个人自己都可以提交代码,互相之间可以合并代码。

Paste_Image.png

虎父无犬子,Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

官网

http://git-scm.com/

图形界面工具

很多,我最喜欢的是source tree.

git入门的基本命令

下面的贴图是我的命令行工具,使用的是zsh,感兴趣的朋友可以看一下这个链接oh-my-zsh

获取帮助

看看如何获得帮助

git help

Paste_Image.png

git help config

如果想查询具体某个命令的帮助,可以在git help后面加上该命令

Paste_Image.png

配置基本信息

基本信息会保存在你提交的修改中,作为备份,所以如果我们对项目做了多少贡献,都是可以查出来的。

加上自己姓名

git config --global user.name "Yin Shen"

加上自己邮箱

git config --global user.email shenyin@rocketmail.com

加上颜色

git config --global color.ui true
Paste_Image.png

创建仓库

现在让我们创建一个仓库来实战吧, 使用init命令就可以啦。

git init 
Paste_Image.png

git基本概念

  • 创建一个新文件的时候,该文件处于没有被追踪的状态


    Paste_Image.png
  • 使用add命令,使得文件登上舞台(staging staging)
    登上舞台是为了拍照,我们看一下第三个状态

Paste_Image.png

上图的git st实际上是git status命令,被重命名了。

  • 把staging staging中的东西都拍照(commit change)
    被拍照的文件都有了一个snapshot(快照)
Paste_Image.png

上面的步骤是我们使用git的一个最重要的模式:edit/stage/commit pattern

  1. 在本地文件夹编辑文件
  2. 如果想备份当前改动了,就使用git add命令放到舞台(stage)
  3. 如果对staged snapshot满意,就可以commit,这样这个snapshot就变成项目历史的一部分了
Paste_Image.png

注意:add,commit命令都是对本地文件的操作,这个和SVN有很大的差别,SVN的所有操作都要和远程服务器通信,但是git是分布式的,大部分操作并不一定需要和中心仓库交互。
具体区别可以看这个链接https://www.atlassian.com/git/tutorials/saving-changes/git-add

add的多种方式

git add <list of files>   
git add --all 
git add *.txt     
git add 文件夹/*.txt       
git add 文件夹  
git add "*.txt" 

日志

可以使用

git log
git log --pretty=oneline
git log --pretty=format:"%h %ad- %s [%an]"
查看修改历史可以用
git blame index.html --date short

删除文件

从文件系统删除
git rm README.txt 
不跟踪
git rm --cached development.log

好用的命令别名

把她们加在.gitconfig文件中就可以了,或者像这样通过命令行配置git config --global alias.mylog "log --pretty=format:'%h %s [%an]' --graph"

mylog = log --pretty=format:'%h %s [%an]' --graph
co=checkout
br=branch
ci=commit
st=status
unstage=reset HEAD --
last=log -1 HEAD
pl1=log origin/yourbranch -1 --pretty=oneline
pl3=log origin/yourbranch -3 --pretty=oneline

相关文章

  • Git之不明觉厉1-基本操作和概念

    不明觉厉的git 在虚拟的计算机世界,git让我们体会到了一种不一样的感觉,也许是那种不明觉厉的高深莫测。 什么是...

  • Git之不明觉厉2-本地操作

    通过实战我们多看看一些命令吧。 GIT DIFF DIFF的简单使用 我们修改一下《Git之不明觉厉1》中的文件《...

  • 不明觉厉

    北宋百家,八十 炊烟袅袅,鸡鸣 断桥之处,有女 望君归来,无人 我受诗经影响比较大,当然诗经里面采用的手法我写不来...

  • 不明觉厉

    不明觉厉,我之前就觉得是佛经里面的话,感觉高大上,好像怎么用都行,而且还可以乱套,帮原来的句子蒙起一片智慧的面纱,...

  • 不明觉厉

    滴答、滴答、滴答 深夜万籁俱静,伴随着指针360°在钟盘里转动,想象着未来的自己会是什么样子?对于年少懵懂无知的自...

  • 不明觉厉

    我相信在忧愁的顶端 塞尔河上有船靠岸 也相信生命在生长 把所有白天的光都交付出来 那不属于寻常的面孔 也不属于谎言...

  • 不明觉厉

    君到姑苏见,人家尽枕河。

  • 不明觉厉

    我们生活的世界就像一个垃圾场 人们像虫子一样 0618 37℃至26℃ 心绪烦乱

  • 不明觉厉

    不明觉厉 我们看古代的文言文,有很多文章,看得一知半解,似懂非懂的,虽然看得不明白讲了什么,但还是觉得很厉...

  • 不明觉厉

    偶有闲暇时,与长椅为伴。 静看鸟与树嬉闹,樱花落在肩。 虽无人在旁, 心难得沉静,自觉满足。

网友评论

    本文标题:Git之不明觉厉1-基本操作和概念

    本文链接:https://www.haomeiwen.com/subject/isunkttx.html