相关网址:
【GeekHour】一小时Git教程_bilibili
Git - Downloads
全局配置文件存储在用户主目录下的.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 // 查看配置
新建一个文件夹,然后在这个文件夹里面使用命令,之后的命令行多了个(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 clone https://github.com/coder2gwy/coder2gwy
工作区指的是在电脑里能看到的目录,比如learn-git文件夹就是一个工作区
暂存区是一个中间状态,它充当了您提交更改的缓冲区。在Git中,您必须明确地将文件添加到暂存区,然后才能将其提交到版本库中。这样做的好处是,您可以对每个更改进行精细控制,并确保只提交需要保存的更改。
版本库包含Git存储库的所有历史记录和元数据。它是Git存储库的核心组成部分,是由Git自动维护的。
新建一个文件
echo "test 123456788sadaasdfdjhlaskihdfl" >> test.txt
Untracked: 未跟踪。此文件仅在工作区中,暂存区和版本库没有它,未进行版本控制。 新建或新增一个文件即产生一个未追踪文件。通过git add 将其加入暂存区,即成为已追踪文件。
使用git status查看文件状态,处于未跟踪状态
使用git add,再查看文件状态(提示:使用git rm --cached file取消暂存)
git add . // 添加目录下所有文件
git add *.txt // 添加所有txt
使用git ls-files查看暂存区的文件
假如在暂存区中有file1,工作区没有了,这时git add file1和git rm file1都是从暂存区删除文件
git commit -m "message" // 提交所有暂存区的文件到本地仓库。
git commit -am "message" // 提交所有已修改的文件到本地仓库。
不加-m会进入交互界面,输入信息
新建的test2没有放到暂存区,没有被提交
git log查看提交日志
git log --oneline // 简洁显示
三种回退模式下,logID之后的改动的文件是否还存在在那里
git reset --mixed
真的误操作了也没事,有个reflog,回溯操作
查看工作区、暂存区、仓库的差异,默认工作区和暂存区
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 rm file1 // 删除工作区和暂存区的这个文件
git rm --cached // 从索引/暂存区中删除文件, 但是本地工作区文件还在
然后要记得提交,不然在仓库里面还有这个文件
使用git ls-files查看暂存区的文件
假如在暂存区中有file1,工作区没有了,这时git add file1和git rm file1都是从暂存区删除文件
.gitignore是一个文本文件,往里面写入忽略规则
新建一个远程仓库作为测试
GitHub - codeNiuMa/learn-git: I`m learning git.
cd ~
mkdir .ssh
cd .ssh
ssh-keygen -t rsa -b 4096 (需要回车确认秘钥文件名、密码、确认密码)
$ 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 clone [email protected]:codeNiuMa/learn-git.git
需要搬出来你的梯子。。。
创建新文件,添加暂存,提交本地
push到远程仓库
有了
在github网页直接修改文件内容,这个远程仓库发生了改变,使用git pull拉取到本地
新建本地项目
新建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 远程别名 远程分支:本地分支