Git学习笔记(一)

Git学习笔记(一)

闲言碎语

Git是什么

一个版本控制系统(VCS,Version Control System)

Git与其他的VCS的区别

快照,而不是差异

img
img

Git的三个状态

imh

学习笔记

准备工作

根据《Pro Git》所说,在你安装Git后首先应该设置用户名与邮箱

$git config --global user.name "John Doe"
$git config --global user.email johndoe@example.com

句首的$为提示符(Prompt),不是自己键入的

然后是设置文本编辑器

$git config --global core.edit vim

教程里是Emacs~

其实我都不太会用~

之后可以用

$git config --list

查看设置,用

$git config -e

使用文本编辑器修改设置

添加文件

为了开始用Git记录(Track)一个已存在的项目,首先需要进入到项目所在的文件夹,然后输入

$git init

进行初始化

这个操作会在目录下创建一个名为.git的子文件夹,里面包含了所有必要的仓库文件,也就是一个Git仓库的骨架

接下来使用

$git add <FILE>

$git add *
$git add *.c
$git add README

添加文件,后面可以用通配符*,但不支持正则表达式

同时,也可以用

$git clone [url]

获得一份别人仓库的拷贝

更改文件

给出《Pro Git》中对于文件状态的叙述:
这里写图片描述

添加/更改文件后,可以用

$git status

查看各文件处于什么状态

如果在之后打上-s,则可以看到各文件状态的一个简短描述,比如下面就是一种

$ git status -s
 M README 
MM Rakefile 
A  lib/git.rb 
M  lib/simplegit.rb
?? LICENSE.txt

未被记录的文件有个??标记,加入到暂存区域(Staging Area)的新文件有一个A,修改过的文件有一个M。有两列标记,左列的标记指示暂存后的文件,右边的标记指示的是修改后的文件。以上面这个胃里,README在工作目录里更改过但是还没有暂存,lib/simplegit.rb更改并暂存了,Rakefile更改后暂存了,但是在暂存后又更改过,所以这个文件的改变在暂存/非暂存中都发生了。

同时可以通过更改.gitignore文件来声明一些不同步的文件,如下例中的.gitignore文件

# no .a files 
*.a
# but do track lib.a, even though you're ignoring .a files above 
!lib.a
# only ignore the root TODO file, not subdir/TODO
/TODO # ignore all files in the build/ directory 
build/
# ignore doc/notes.txt, but not doc/server/arch.txt 
doc/*.txt
# ignore all .txt files in the doc/ directory
doc/**/*.txt

除了status之外,还可以使用

$git diff

查看暂存与未暂存的更改。

如果想要查看下次提交(commit)会改变的文件(即暂存的文件),使用命令

$git diff --staged

提交更改

输入

$git commit

即可完成对staged file的提交,这次的修改也就完成,与此同时,也常用

$git commit -m "Comit Message"

附加上此次提交的信息

commit还有更多、更丰富的选项可选,具体的就看文档吧

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值