欢迎使用我的代码仓库 https://github.youdu.love/

Git 配置

# 配置账户名和邮箱
git config --global user.name "xingyou wu"
git config --global user.email 3050128610@qq.com

# 配置代理, 代理端口根据实际情况修改
git config --global http.proxy http://127.0.0.1:7890

# 取消代理配置,其他配置类也类似
git config --global --unset http.proxy

# 查看配置信息
git config --global --list

# 保存配置信息
git config --global credential.helper store

创建仓库并连接到远程仓库

# 初始化仓库(建立说明文件)
touch README.md
仓库初始化
git init
# 创建main分支并切换到main分支上
git checkout -b main
# 提交文件到本地仓库
git add README.md
# 添加说明
git commit -m "first commit"
# 配置远程仓库链接 
git remote add origin https://github.youdu.love/wxy/test2.git
# 推送到远程仓库,首次推送必须加 -u, 后续可以直接git push
git push -u origin main

# 获取远端最新状态
git fetch origin 
# 合并远程变更到本地
git merge origin/main
# 或者,相当于 fetch + merge (推荐)
git pull origin main    

工作区域和文件状态

不同区域所在目录

不同区域类比:

  • 工作区产出(或变化)的内容先通过 git add 运送到暂存区

  • 暂存区存放的改变到达一定量的时候统一通过git commit 上传至本地仓库

仓库内的文件状态:

  1. 未跟踪(Untrack)

    • 文件尚未被 Git 记录。

    • 可以通过 git add 命令将文件添加到暂存区(Staged)。

  2. 未修改(Unmodified)

    • 文件已经被跟踪,并且当前版本与仓库中的版本一致。

    • 如果文件被修改,它将进入“已修改”状态。

    • 可以通过 git rm 命令删除文件,使其回到“未跟踪”状态。

    • 可以通过 git checkout 命令从暂存区中检出文件,使其回到“未修改”状态。

  3. 已修改(Modified)

    • 文件已被修改,但尚未添加到暂存区。

    • 可以通过 git add 命令将修改添加到暂存区。

    • 可以通过 git checkout 命令撤销修改,使其回到“未修改”状态。

    • 可以通过 git reset 命令撤销修改,使其回到“未修改”状态。

  4. 已暂存(Staged)

    • 文件的修改已被添加到暂存区,准备提交。

    • 可以通过 git commit 命令提交暂存区的修改,使其回到“未修改”状态。

    • 可以通过 git reset 命令从暂存区中移除文件,使其回到“已修改”状态。

添加和提交文件

# 查看仓库状态
git status

# 添加到暂存区,添加文件名时可以使用通配符 例如 *.txt  . ( .指当前目录所有文件 )
git add filename

# 查看暂存区文件
git ls-files

# 提交文件,只提交暂存区的内容,不提交工作区的内容
git commit

# 查看提交日志
git log

# 查看简洁的提交记录
git log --oneline

# 查看操作历史
git reflog

git reset 回退版本

三种模式:

回退的三种模式与工作区、暂存区内容是否保留的对应关系如下:

# 回退指令 commitId 通过 git log --oneline 查看
git reset --soft  commitId

# 其他类似

git diff 查看差异

git rm 删除仓库文件

gitignore忽略文件

应该忽略哪些文件?