Git 入门超简单指南

1. 什么是 Git?

Git 是一个分布式版本控制系统,由 Linus Torvalds 于 2005 年创建。它的主要目的是帮助开发者有效地管理和跟踪项目的历史版本。通过使用 Git,你可以轻松地记录每一次代码的修改,回滚到以前的版本,以及与其他人协作开发项目。

2. 配置 Git

首次使用 Git 之前,需要配置用户信息,这样每次提交时 Git 都会知道是谁提交的。

git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
  • --global 表示这是全局配置,适用于所有 Git 仓库。如果你想为某个特定的仓库配置用户信息,可以在该仓库目录下使用相同的命令,去掉 --global 参数。

3. 创建 Git 仓库

3.1 初始化新仓库

  1. 在项目根目录下打开终端。

  2. 执行以下命令初始化一个新的 Git 仓库:

    git init

这会在当前目录下创建一个名为 .git 的隐藏目录,里面存储了 Git 仓库的所有信息。

3.2 克隆现有仓库

  1. 如果你要从远程仓库克隆项目,可以使用以下命令:

    git clone <repository-url>

例如:

git clone https://github.com/username/repository.git

这会将远程仓库克隆到本地当前目录下的一个子目录中,子目录的名称默认为远程仓库的名称。

4. 基本 Git 流程

4.1 添加文件到暂存区

git add <file>

如果要添加所有修改过的文件,可以使用:

git add .

4.2 提交更改

git commit -m "提交信息"

提交信息应该简洁明了,描述本次提交的主要内容。例如:

git commit -m "修复登录界面的输入框问题"

4.3 推送更改

git push origin main

注意:origin 是远程仓库的默认名称,main 是主分支的名称。如果你的远程仓库使用的是 master 分支,可以将 main 替换为 master

5. 查看仓库状态

5.1 查看当前状态

使用 git status 查看当前仓库的状态,包括哪些文件已被跟踪,哪些文件未被跟踪。

git status

输出示例:

On branch main
Your branch is up to date with 'origin/main'.

Untracked files:
(use "git add <file>..." to include in what will be committed)
newfile.txt

nothing added to commit but untracked files present (use "git add" to track)

5.2 查看提交历史

使用 git log 查看提交历史。

git log

为了更简洁地查看历史,可以使用:

git log --oneline

输出示例:

1a2b3c4 Fix login input issue
5f6g7h8 Add new feature
9i0j1k2 Initial commit

6. 分支管理

6.1 创建分支

创建一个新分支。

git branch <branch-name>

例如:

git branch feature-login

6.2 切换分支

切换到另一个分支。

git checkout <branch-name>

例如:

git checkout feature-login

也可以一步完成创建和切换:

git checkout -b <branch-name>

例如:

git checkout -b bugfix-login

6.3 合并分支

将一个分支的更改合并到当前分支。

git merge <branch-name>

例如:

git merge feature-login

如果合并过程中出现冲突,Git 会标记出冲突的部分。你需要手动编辑文件,解决冲突后,再继续提交:

git add <conflicted-file>
git commit -m "解决冲突"

6.4 删除分支

删除一个已经合并的分支。

git branch -d <branch-name>

例如:

git branch -d feature-login

7. 撤销更改

7.1 撤销工作区的更改

恢复工作区的文件到最近一次提交的状态。

git checkout -- <file>

例如:

git checkout -- index.html

7.2 撤销暂存区的更改

将已添加到暂存区的文件移出暂存区。

git reset <file>

例如:

git reset index.html

7.3 撤销提交

撤销最近一次提交,但保留工作区和暂存区的更改。

git reset --soft HEAD~1

如果要完全撤销最近一次提交,包括工作区和暂存区的更改:

git reset --hard HEAD~1

8. 获取远程仓库的最新更改

8.1 拉取最新更改

从远程仓库获取最新的更改并合并到当前分支。

git pull

如果你想从特定的远程仓库和分支拉取更改,可以使用:

git pull <remote> <branch>

例如:

git pull origin main

9. 常用命令总结

  • git init:初始化一个新的 Git 仓库。
  • git clone <repository-url>:克隆一个远程仓库。
  • git add <file>git add .:将文件添加到暂存区。
  • git commit -m "提交信息":提交暂存区的文件。
  • git push origin <branch-name>:将本地分支的更改推送到远程仓库。
  • git status:查看当前仓库的状态。
  • git loggit log --oneline:查看提交历史。
  • git branch <branch-name>:创建新分支。
  • git checkout <branch-name>:切换到指定分支。
  • git merge <branch-name>:合并分支。
  • git pull:从远程仓库拉取最新更改。
  • git reset --soft HEAD~1:撤销最近一次提交,但保留工作区和暂存区的更改。
  • git reset --hard HEAD~1:完全撤销最近一次提交。

希望这篇笔记能够让你快速上手git,让你在控制版本的路上越走越远~

相关推荐
曼陀罗3 小时前
'pnpm-lock.yaml', LF will be repalce by CRLF the next time Git touches it
git
不像程序猿的程序员3 小时前
生产环境中,nginx 最多可以代理多少台服务器,这个应该考虑哪些参数 ?怎么计算呢
服务器·nginx·github
油泼辣子多加6 小时前
2024年11月27日Github流行趋势
github
bug智造7 小时前
git使用文档手册
git·gitlab
南林yan8 小时前
Git基本操作
git
2401_840192278 小时前
在windows操作系统上,用git与github账户连接
windows·git·github
007php00717 小时前
GoZero对接GPT接口的设计与实现:问题分析与解决
java·开发语言·python·gpt·golang·github·企业微信
前端李易安1 天前
Git中HEAD、工作树和索引的区别
git·elasticsearch·搜索引擎
挥之以墨1 天前
【git实践】分享一个适用于敏捷开发的分支管理策略
git·敏捷流程