Git学习笔记二:Git的使用

本文介绍了如何使用Git进行版本控制的基本操作,包括创建版本库、提交文件、查看日志、比较不同版本、查看版本库状态、回退到历史版本以及撤销修改等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、创建版本库:
安装git之后,在想要创建git仓库的文件夹里右击鼠标,选择Git Bash Here,会弹出一个命令窗口,新建一个文件夹,作为版本库的名称,比如repository,当然,你也可以手动新建文件夹后进入该文件夹执行$git init即可。
$mkdir repository
$cd repository
$git init
这样就建好了一个git版本库,这时候我们会发现在repository下多了一个.git的文件夹(windows下可能需要勾选文件夹选项中的显示隐藏文件)。

2、提交文件
git有一个暂存区,需要先使用add指令将文件添加至暂存区,再使用commit指令将暂存区的内容提交到版本库中。如果将文件add到暂存区之后,在commit执行之前做了修改,但是没有再次执行add,那么修改的内容是不会提交到git版本库里的。文件路径必须保证在repository版本库的文件夹下,否则git是找不到的。例如我们提交一个文件test.txt,-m 后面的字符串是本次提交的版本说明:
$git add test.txt
$git commit -m "提交txt文件"

3、查看日志
我们关注的重点一般有版本、版本说明以及修改了哪些文件,使用git log可以查看从最近到最远的提交历史日志,信息很详细,但通常不是我们想要看的。加上--pretty=oneline可以只查看完整的版本号信息+版本说明,或者只是加上--oneline查看简短的版本号信息+版本说明(建议使用这个,比较好记,而且信息量够我们用了),类似03ea1705c0681bf8906fda037ea105a73a0dd9b2就是版本号。使用git reflog可以查看操作历史日志。如果我们想看有哪些文件做了修改,在后面加上--stat就可以了。
$git log
commit 03ea1705c0681bf8906fda037ea105a73a0dd9b2 (HEAD -> master)
Author: hxl <243096313@qq.com>
Date: Sun Sep 10 19:45:13 2017 +0800

提交txt文件

$git log --pretty=oneline
03ea1705c0681bf8906fda037ea105a73a0dd9b2 (HEAD -> master) 提交txt文件

$git log --oneline --stat (建议使用)
03ea170 提交txt文件
test.txt | 0
0 file changed, 1 insertions(+), 0 deletions(-)

$git reflog
03ea170 (HEAD -> master) HEAD@{2}: commit: 提交txt文件

4、比较不同
我们打开test.txt,输入hello world,可使用git diff <版本号> <文件名>来查看修改的地方,不加文件名或者版本号则默认是比较当前所有文件与最新版本的所有文件。其中,HEAD表示当前版本,HEAD^表示上一个版本,HEAD^^表示上两个版本,以此类推,当然,也可以用HEAD~2表示上两个版本。
$git diff 或者 $git diff test.txt 或者 $git diff HEAD test.txt
diff --git a/test.txt b/test.txt
index e69de29..95d09f2 100644
--- a/test.txt
+++ b/test.txt
@@ -0,0 +1 @@
+hello world
\ No newline at end of file


5、查看版本库的状态
很常用的命令,可能帮助我们查看仓库当前的状态,例如有文件修改(modified)、有文件新建(Untracked files)、没有修改(nothing to commit, working tree clean)等。
$git status
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)

modified: test.txt

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

6、回退到历史版本
我们可以使用git reset --hard <版本> <文件>回退到历史版本,版本号可以通过git log查看历史版本。这里值得注意的是,git log只显示历史版本,也就是说你回退到上一个版本的时候,通过git log就再也找不回当前的版本了。难道说,我回去了就回不来了?其实是可以的,我们可以通过git reflog查看所有的操作历史记录找回版本号,只要知道版本号,就可以随意来回。
$git reset --hard HEAD test.txt或者 git reset --hard 03ea170 test.txt
我们重新打开test.txt文件,发现hello world已经不见了,说明test.txt文件回到了当前版本最初始的转改,这里版本号不需要写全,写前面几位就好了(这也就是查询历史记录是推荐使用--oneline而不是--pretty=oneline的原因之一),但是不能太短,至少能根据所写的版本号识别是唯一对应的版本号。

7、撤销修改
回退到历史版本有时候不能满足我们的需求,比如执行如下操作:修改-->add到暂存区-->修改,我们只想撤销add之后的修改,如果执行reset会把add之前的修改也清除掉,不满足我们的需求,此时我们可以使用git checkout -- <文件>来进行撤销操作。如果没有将文件add到暂存区,那么此操作类似于reset。注意文件前面有两个横岗--
$git checkout -- text.txt





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值