git 基本信息

这篇博客详细介绍了Git的基础知识,包括官网地址、本地库初始化、设置签名、基本操作如状态查看、添加、提交、查看历史记录、前进后退、重置命令的参数对比,以及分支管理。特别强调了Git命令在项目级别和系统用户级别设置签名的差异,以及reset命令的三种参数的不同影响。此外,还涵盖了如何删除和找回文件、比较文件差异以及分支的创建、查看、切换和合并等操作。

一、Git 官网

官网地址:https://git-scm.com/

二、Git 命令行操作

1. 本地库初始化 本地库初始化

  • 命令:git add
  • 效果:会生成一个隐藏的.git/文件夹
  • 注意:.git 目录中存放的是本地库相关的子目录和文件,不要删除以及修改。

2. 设置签名

2.1 形式

用户名:jerry
Email 地址:jerry@aliyun.com

2.2 作用

区分不同开发人员的身份,这里设置的签名和登录远程库(代码托管中心)的账号、密码没有任何关系;

2.3 命令

  • 项目级别/仓库级别:仅在当前本地库范围内有效
    git configuser.name jerry
    git configuser.email jerry@aliyun.com
    信息保存位置:./.git/config 文件
  • 系统用户级别:登录当前操作系统的用户范围
    git config --global user.name jerry
    git config --global user.email jerry@aliyun.com
  • 信息保存位置:~/.gitconfig 文件
  • 级别优先级
    就近原则:项目级别优先于系统用户级别,二者都有时采用项目级别
    的签名
    如果只有系统用户级别的签名,就以系统用户级别的签名为准
    二者都没有不允许
  • 设置记住登录github/gitlab的用户密码
    git config --global credential .helper store

3. 基本操作

3.1 状态查看

git status
查看工作区、暂存区状态

3.2 添加

git add [file name]
将工作区的“新建/修改”添加到暂存区

3.3 提交

git commit -m “commit message” [file name]
将暂存区的内容提交到本地库

3.4 查看历史记录

git log
多屏显示控制方式:
空格向下翻页
b 向上翻页
q 退出
git log --pretty=oneline
git log --oneline
git reflog
HEAD@{移动到当前版本需要多少步}

3.5 前进后退

本质:指针

  • 基于索引值操作[推荐]
    git reset --hard [局部索引值]
    git reset --hard a6ace91
  • 使用^符号:只能后退
    git reset --hard HEAD^
    注:一个^表示后退一步,n 个表示后退 n 步
  • 使用~符号:只能后退
    git reset --hard HEAD~n
    注:表示后退 n 步

3.6 reset 命令的三个参数对比

--soft 参数
仅仅在本地库移动 HEAD 指针
--mixed 参数
在本地库移动 HEAD 指针
重置暂存区
--hard 参数
在本地库移动 HEAD 指针
重置暂存区
重置工作区

3.7 删除文件并找回

前提:删除前,文件存在时的状态提交到了本地库。
操作:git reset --hard [指针位置]
删除操作已经提交到本地库:指针位置指向历史记录
删除操作尚未提交到本地库:指针位置使用 HEAD

3.8 比较文件差异

git diff [文件名]
将工作区中的文件和暂存区进行比较
git diff [本地库中历史版本] [文件名]
将工作区中的文件和本地库历史记录比较
不带文件名比较多个文件

4 分支管理

4.1 什么是分支?

在版本控制过程中,使用多条线同时推进多个任务。

4.2 分支的好处?

同时并行推进多个功能开发,提高开发效率
各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任
何影响。失败的分支删除重新开始即可。

4.3 分支操作

  • 创建分支
    git branch[分支名]
  • 查看分支
    git branch-v
  • 切换分支
    git checkout [分支名]
  • 合并分支
  1. 第一步:切换到接受修改的分支(被合并,增加新内容)上
    git checkout [被合并分支名]
  2. 第二步:执行 merge 命令
    git merge [有新内容分支名]
  • 解决冲突
  1. 第一步:编辑文件,删除特殊符号
  2. 第二步:把文件修改到满意的程度,保存退出
  3. 第三步:git add [文件名]
  4. 第四步:git commit -m “日志信息”
  5. 注意:此时 commit 一定不能带具体文件名
### Git 基本命令教程 Git 是一个分布式版本控制系统,用于跟踪文件的更改和管理项目代码。以下是常用的 Git 基本命令及其功能: #### 初始化仓库 ```bash git init ``` 该命令用于初始化一个新的 Git 仓库[^1]。 #### 克隆远程仓库 ```bash git clone [url] ``` 通过指定远程仓库的 URL,可以将远程仓库的内容复制到本地[^2]。 #### 查看状态 ```bash git status ``` 显示工作目录和暂存区的状态,帮助开发者了解哪些文件被修改或新增[^3]。 #### 跟踪新文件或暂存更改 ```bash git add [file-name] ``` 将文件添加到暂存区,准备提交。如果要添加所有更改的文件,可以使用 `git add .`[^4]。 #### 提交更改 ```bash git commit -m "提交信息" ``` 将暂存区的更改提交到本地仓库,并附带一条描述性消息[^5]。 #### 查看提交历史 ```bash git log ``` 显示所有的提交记录,包括每次提交的哈希值、作者、日期和提交信息[^6]。 #### 切换分支或恢复工作树文件 ```bash git checkout [branch-name] ``` 切换到指定分支。如果需要恢复某个文件到上次提交的状态,可以指定文件名[^7]。 #### 创建新分支 ```bash git branch [branch-name] ``` 创建一个新的分支,但不会自动切换到该分支[^8]。 #### 合并分支 ```bash git merge [branch-name] ``` 将指定分支的更改合并到当前分支[^9]。 #### 推送更改到远程仓库 ```bash git push origin [branch-name] ``` 将本地分支的更改推送到远程仓库[^10]。 #### 拉取远程仓库的最新更改 ```bash git pull origin [branch-name] ``` 从远程仓库获取最新的更改并合并到当前分支[^11]。 --- ```python # 示例:Python 脚本中调用 Git 命令 import subprocess def run_git_command(command): result = subprocess.run(command, shell=True, capture_output=True, text=True) return result.stdout output = run_git_command("git status") print(output) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值