Git学习(一)基础

我之前会用一些git,教给小组里的同学使用的也是简单的turtoise,完全不用自己处理上传逻辑,所以现在开一个系列,系统地学习一下

0x01 创建版本库

1
2
3
mkdir myapp
cd myapp
git init # 初始化

注意点:

git只能追踪文本文件的改动,比如添加/删除某些内容,不能准确追踪二进制文件的改动,只知道大小的改变

使用Windows的童鞋要特别注意:

千万不要使用Windows自带的记事本编辑任何文本文件。原因是Microsoft开发记事本的团队使用了一个非常弱智的行为来保存UTF-8编码的文件,他们自作聪明地在每个文件开头添加了0xefbbbf(十六进制)的字符,你会遇到很多不可思议的问题,比如,网页第一行可能会显示一个“?”,明明正确的程序一编译就报语法错误,等等,都是由记事本的弱智行为带来的。建议你下载Notepad++代替记事本,不但功能强大,而且免费!记得把Notepad++的默认编码设置为UTF-8 without BOM即可:

然后将编写的文件放入文件夹(复制,新建等)

再将文件添加到git仓库

1
2
git add x.txt
git add y.txt z.cpp # git 能够多次添加,一次也可以添加多个

最后将文件提交到git仓库

1
git commit -m 'first commit'

0x02 查看状态

git status显示版本库当前状态

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$ git status
On branch hexo
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
(commit or discard the untracked or modified content in submodules)
modified: source/about/index.md
modified: themes/next (modified content, untracked content)

Untracked files:
(use "git add <file>..." to include in what will be committed)
"source/_posts/CLion\347\216\257\345\242\203\351\205\215\347\275\256.md"
"source/_posts/Git\345\255\246\344\271\240.md"

no changes added to commit (use "git add" and/or "git commit -a")

0x03 查看区别

git diff查看文件是否被修改,修改了哪些部分

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$ git diff index.md
diff --git a/source/about/index.md b/source/about/index.md
index f8e2265..c655ce3 100644
--- a/source/about/index.md
+++ b/source/about/index.md
@@ -2,3 +2,10 @@
title: about
date: 2020-01-23 17:21:43
---
+
+
+
+## About Me
+
+Profile:A Noob Who Love Security And Wanna Be A Security Reasearcher
+

0xXX 学习资源

廖雪峰git

learngitbranching

用玩游戏的方式学git


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!