git使用

相关网址: 

【GeekHour】一小时Git教程_bilibili

Git - Downloads

1 初始化

        全局配置文件存储在用户主目录下的.gitconfig文件中,它是全局生效的。在Windows系统中,一般位于“C:\Users\用户名”目录下;在Linux和Mac OS X系统中,一般位于“~”目录下。

        Git记录每一次提交的作者信息,因此我们需要设置用户名和邮箱。在Git中,我们可以使用以下命令来设置:

git config --global user.name "Your Name"           // 配置用户名
git config --global user.email "[email protected]"   // 配置邮箱
git config --global credential store                // 保存配置
git config --global --list                          // 查看配置

2 创建仓库

2.1 本地

新建一个文件夹,然后在这个文件夹里面使用命令,之后的命令行多了个(master)

$ git init
Initialized empty Git repository in D:/Code/gitCode/learn-git/.git/

SZY@LAPTOP-DVJ0R5NO MINGW64 /d/Code/gitCode/learn-git (master)
$
git init XXX  // 在当前目录下的XXX文件夹创建目录

出现隐藏文件夹 .git

git使用_第1张图片

2.2 克隆远程仓库

git clone https://github.com/coder2gwy/coder2gwy

3 四个区域

git使用_第2张图片git使用_第3张图片

3.1 工作区

工作区指的是在电脑里能看到的目录,比如learn-git文件夹就是一个工作区

3.2 暂存区

        暂存区是一个中间状态,它充当了您提交更改的缓冲区。在Git中,您必须明确地将文件添加到暂存区,然后才能将其提交到版本库中。这样做的好处是,您可以对每个更改进行精细控制,并确保只提交需要保存的更改。

3.3 本地仓库 / 版本库

        版本库包含Git存储库的所有历史记录和元数据。它是Git存储库的核心组成部分,是由Git自动维护的。

3.4 远程仓库

4 文件操作

4.1 添加 提交

git使用_第4张图片

git使用_第5张图片

新建一个文件

 echo "test 123456788sadaasdfdjhlaskihdfl" >> test.txt

        Untracked: 未跟踪。此文件仅在工作区中,暂存区和版本库没有它,未进行版本控制。 新建或新增一个文件即产生一个未追踪文件。通过git add 将其加入暂存区,即成为已追踪文件。

 使用git status查看文件状态,处于未跟踪状态

git使用_第6张图片

使用git add,再查看文件状态(提示:使用git rm --cached file取消暂存)

git add .     // 添加目录下所有文件
git add *.txt // 添加所有txt

git使用_第7张图片

使用git ls-files查看暂存区的文件 

假如在暂存区中有file1,工作区没有了,这时git add file1和git rm file1都是从暂存区删除文件

git commit -m "message"   // 提交所有暂存区的文件到本地仓库。
git commit -am "message"  // 提交所有已修改的文件到本地仓库。

不加-m会进入交互界面,输入信息 

新建的test2没有放到暂存区,没有被提交 

git使用_第8张图片

git log查看提交日志

git log --oneline  // 简洁显示

git使用_第9张图片

4.2 回退

三种回退模式下,logID之后的改动的文件是否还存在在那里

git reset --mixed 

 真的误操作了也没事,有个reflog,回溯操作

git使用_第10张图片

git使用_第11张图片

4.3 差异

查看工作区、暂存区、仓库的差异,默认工作区和暂存区

git diff                             // 查看未暂存的文件更新了哪些部分
git diff HEAD                        // 工作区和仓库的差异
git diff --cached                    // 暂存区和仓库的差异
git diff       // 查看两个提交之间的差异。

git diff HEAD~ HEAD                  // 查看当前与上一个版本差异
git diff HEAD~2 HEAD                 // 查看当前与上2个版本差异
git diff HEAD~2 HEAD file1           // 查看当前与上2个版本的file1的差异

HEAD指向当前仓库最新提交节点, 

git使用_第12张图片

4.4 删除

git rm file1  // 删除工作区和暂存区的这个文件
git rm --cached  // 从索引/暂存区中删除文件, 但是本地工作区文件还在

然后要记得提交,不然在仓库里面还有这个文件 

使用git ls-files查看暂存区的文件 

假如在暂存区中有file1,工作区没有了,这时git add file1和git rm file1都是从暂存区删除文件

4.5 .gitignore

.gitignore是一个文本文件,往里面写入忽略规则

git使用_第13张图片

git使用_第14张图片git使用_第15张图片git使用_第16张图片

4.6 远程

git使用_第17张图片

新建一个远程仓库作为测试

GitHub - codeNiuMa/learn-git: I`m learning git.

cd ~
mkdir .ssh
cd .ssh 
ssh-keygen -t rsa -b 4096 (需要回车确认秘钥文件名、密码、确认密码)

git使用_第18张图片

$ ll
total 8
-rw-r--r-- 1 SZY 197121 3381 Nov  2 17:03 id_rsa      // 本地秘钥
-rw-r--r-- 1 SZY 197121  745 Nov  2 17:03 id_rsa.pub  // 公钥

复制公钥文件的内容,粘贴到

https://github.com/settings/ssh/new

git使用_第19张图片

克隆到本地

git clone [email protected]:codeNiuMa/learn-git.git

 需要搬出来你的梯子。。。

git使用_第20张图片

创建新文件,添加暂存,提交本地

git使用_第21张图片

push到远程仓库 

git使用_第22张图片

有了

git使用_第23张图片

在github网页直接修改文件内容,这个远程仓库发生了改变,使用git pull拉取到本地

git使用_第24张图片

源于本地的项目,推动到远程

新建本地项目

新建github项目

同步远程本地

git remote add origin [email protected]:codeNiuMa/PythonTools.git
git remote -v 查看别名
git branch -M main  // 指定分支名称
git push -u origin (main:main)  // 可选选项,本地的main推给远程的main

git pull --rebase origin master   // 本地合并
git pull 远程别名 远程分支:本地分支

你可能感兴趣的:(git)