Git快速入门
1、创建一个新文件夹mkdir
mkdir project
2、cd到创建的文件夹,例如proejct
cd prjoect
3、文件夹与git产生联系
git init
输入以上指令,就会在当前文件夹生成 隐藏文件.git文件夹,使用 ls -al查看、
4、配置
git config user.name xxxx
git config user.email xxx@mail
cat ./git/config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[user]
name = xxx
email = xxx@qq.com
工作区
1、在project目录下,touch一个文件 main.c 这个main.c就是在工作区
注意:目录和.git同级
git status # 命令查看
On branch master
#-----------------------------result----------------------------------------
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
main.c # 在终端会显示为红色,红色的就是工作区
nothing added to commit but untracked files present (use "git add" to track)
``
暂存区
工作区添加到暂存区 git add
git add . #当前目录下所有文件
git add xxxfilename # 单个文件
#--------------------------result------------------------------------------
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: main.c # 一般在终端是绿色的
本地仓库
暂存区代码添加到仓库 git commit
git commit -m # -m message 表示添加一些注释信息
git commit -m "main函数"
#--------------------------result------------------------------------------
[master (root-commit) 50ff8f1] main函数
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 main.c
# 再次 git status
#--------------------------result------------------------------------------
On branch master
nothing to commit, working tree clean
被保存到本地仓库了 但是ls 还能看见本地这个文件
历史记录
记录我们的操作
git log
#--------------------------result------------------------------------------
@ubuntu:~/project$ git log
commit 646f5456930a885bddf5dfe76cbfdc2a269cc143 (HEAD -> master)
Author: xxx<xxx@qq.com>
Date: Sun Jan 7 21:53:49 2024 +0800
登陆功能
commit 50ff8f1e7bc7519c3183a4fca4782357fe5fe645
Author: xxx<xxx@qq.com>
Date: Sun Jan 7 21:50:42 2024 +0800
版本回退
git log
#--------------------------result------------------------------------------
Author: xxx<xxx@qq.com>
Date: Sun Jan 7 21:53:49 2024 +0800
登陆功能
commit 50ff8f1e7bc7519c3183a4fca4782357fe5fe645
Author: xxx<xxx@qq.com>
Date: Sun Jan 7 21:50:42 2024 +0800
main函数
#--------------------------------------------------------------------
方案一
git reset --hard “HEAD” # 强制
- HEAD 表示当前最新版本
- HEAD^ 表示当前最新版本的第一个版本
- HEAD^^ 表示当前最新版本的前两个版本,依次类推
- HEAD~1 表示当前最新版本的前一个版本
- HEAD~10 表示当前的最新版本的前10个版本
方案二
版本比较多的时候,可以指定版本号
git reflog
查看版本
git reflog 查看完整日志
xxx@ubuntu:~/Desktop/test$ git reflog
a65c953 (HEAD -> master) HEAD@{0}: reset: moving to HEAD^
6c0ca7f HEAD@{1}: commit: UI界面开放完成
a65c953 (HEAD -> master) HEAD@{2}: commit (initial): MAIN函数开发完成
a65c953 是版本号
git reset --hard a65c953