当前位置: 首页 > news >正文

Git 小白超详细指南

Git 小白超详细指南

最最常用的命令(每天都要用)

1. 查看状态 - git status

作用:看看你现在在哪个分支,文件有没有修改,该提交什么

bash

git status

你会看到

text

位于分支 main
您的分支与上游分支 'origin/main' 一致。尚未暂存以备提交的变更:(使用 "git add <文件>..." 更新要提交的内容)(使用 "git restore <文件>..." 丢弃工作区的改动)修改:     README.md未跟踪的文件:(使用 "git add <文件>..." 以包含要提交的内容)new-file.txt无文件要提交,干净的工作区

翻译

  • 红色文件:修改了但还没准备提交

  • 绿色文件:已经准备好可以提交了


2. 添加文件到准备区 - git add

作用:告诉 Git"这些文件我改好了,准备提交"

bash

git add README.md           # 只添加这个文件
git add .                   # 添加所有修改的文件(最常用)
git add *.js               # 添加所有js文件

3. 提交更改 - git commit

作用:把准备好的文件正式保存到版本库

bash

git commit -m "修复了登录bug"  # -m 后面写提交说明

提交说明要写清楚

  • ❌ 不好的:"修改"

  • ✅ 好的:"修复用户登录时密码验证失败的问题"


4. 推送到远程仓库 - git push

作用:把你本地的提交上传到 GitHub/GitLab

bash

git push origin main        # 推送到main分支

第一次推送可能需要登录账号密码。


5. 拉取最新代码 - git pull

作用:从远程仓库下载最新的代码

bash

git pull origin main

重要:在开始写代码前,先执行这个命令!


小白每日工作流程

场景:早上来公司开始工作

bash

# 1. 打开终端,进入项目目录
cd /path/to/your/project# 2. 拉取最新代码(避免冲突)
git pull origin main# 3. 开始写代码...
#    (修改文件,添加功能等)# 4. 写完代码后,查看状态
git status# 5. 添加所有修改的文件
git add .# 6. 提交更改
git commit -m "完成了用户注册功能"# 7. 推送到远程
git push origin main

小白最常遇到的10个问题

问题1:git push 被拒绝

错误信息

text

! [rejected] main -> main (non-fast-forward)

原因:别人已经推送了代码,你的本地版本太旧了

解决方法

bash

# 先拉取最新代码
git pull origin main# 如果有冲突,解决冲突(下面会讲)
# 然后重新推送
git push origin main

问题2:git pull 出现冲突

错误信息

text

CONFLICT (content): Merge conflict in file.txt

解决方法

  1. 打开冲突文件,你会看到:

javascript

<<<<<<< HEAD
这是你写的代码
=======
这是别人写的代码
>>>>>>> commit-id
  1. 手动选择要保留的代码,删除标记:

javascript

// 这是最终合并后的代码
// 你可以选择保留你的,或者别人的,或者都保留
这是合并后的代码
  1. 标记冲突已解决

bash

git add 冲突的文件名
git commit -m "解决合并冲突"

问题3:提交到错误的分支

场景:应该在 feature 分支写代码,却在 main 分支写了

解决方法

bash

# 1. 保存当前的修改
git add .
git commit -m "临时保存"# 2. 创建并切换到正确的分支
git checkout -b feature-branch# 3. 回到main分支,删除刚才的提交
git checkout main
git reset --hard HEAD~1    # 回退到上一个提交# 4. 回到feature分支继续工作
git checkout feature-branch

问题4:提交信息写错了

解决方法

bash

git commit --amend -m "新的正确提交信息"

注意:如果已经 git push 了,就不要用这个命令了。


问题5:想撤销还没提交的修改

场景:写了一半发现写错了,想重来

bash

# 撤销单个文件的修改
git checkout -- filename.txt# 撤销所有修改(谨慎使用!)
git checkout -- .# 或者使用更新的命令
git restore filename.txt

问题6:不小心删除了重要文件

解决方法

bash

# 恢复单个文件
git checkout HEAD -- filename.txt# 恢复所有文件到最新提交状态
git checkout -- .

问题7:忘记切换分支就开始写代码

场景:应该在 develop 分支写,却在 main 分支写了

解决方法

bash

# 1. 保存当前的修改
git add .
git commit -m "临时提交"# 2. 切换到正确的分支
git checkout develop# 3. 把刚才的提交"搬"过来
git cherry-pick main# 4. 回到main分支删除那个提交
git checkout main
git reset --hard HEAD~1

问题8:分支搞乱了,想重新开始

解决方法

bash

# 回到远程仓库的最新状态(会丢失所有本地修改!)
git fetch origin
git reset --hard origin/main

问题9:输入 git log 后不知道怎么退出

解决方法:按 q 键(quit)


问题10:密码输错了,一直认证失败

解决方法

bash

# 清除保存的凭据,重新输入
git credential reject
git push origin main  # 会重新要求输入用户名密码

实用小技巧

1. 简化命令

可以设置别名:

bash

git config --global alias.st status
git config --global alias.ci commit
git config --global alias.co checkout
git config --global alias.br branch

这样就能用:

bash

git st    # 代替 git status
git ci -m "消息"  # 代替 git commit -m

2. 查看简洁状态

bash

git status -s

输出更简洁:

text

M README.md    # 修改的文件
A  new-file.txt # 新文件
D  old-file.txt # 删除的文件
?? unknown.txt  # 未跟踪文件

3. 查看这次提交改了啥

bash

git diff        # 查看未暂存的修改
git diff --staged  # 查看已暂存的修改

记住这5个命令就能活下来

  1. git status - 看看现在啥情况

  2. git pull - 下载最新代码

  3. git add . - 准备提交所有文件

  4. git commit -m "描述" - 提交更改

  5. git push - 上传到远程

遇到问题就:

  1. 别慌

  2. git status 看看情况

  3. 按上面的解决方法操作

  4. 实在不行就找同事帮忙

记住:Git 的所有操作几乎都可以撤销,不会把代码搞丢的!

http://www.dtcms.com/a/461749.html

相关文章:

  • 深度学习基础:从原理到实践——第二章神经网络(上)
  • 企业网站制作报价单哈尔滨视频剪辑培训机构
  • SOME/IP车载服务的形式化安全分析和防护
  • TCP三次握手与四次挥手状态解析
  • 网站想换空间invoker wordpress
  • Eureka注册中心
  • 网站建设销售总结房屋装修在线设计网站
  • 机器学习基本概念
  • Buffer:Node.js 里处理二进制数据的 “小工具”
  • 网站开发博客大前端d8扁平化wordpress模板
  • Go 语言环境安装指南
  • UiPath2025笔记第六节:java调试API触发器
  • Python实现自动化巡检ESXi6.7并输出excel报告
  • wordpress手机显示不了图片关键词优化计划
  • Python学习之基础篇
  • 手机app开发 网站建设描述网站开发的广告词
  • 24届-Python面经(华为OD)
  • JavaSpring项目之连接,并使用redis
  • 前端核心框架vue之(vue状态核心案例篇4/5)
  • 前端请求优化进阶:并发控制、缓存优化与错误重试实战教程
  • 网站建设的主要特征一个网址需要多少钱
  • 多模态医疗大模型Python编程合规前置化与智能体持续学习研究(上)
  • Transformer 面试题及详细答案120道(71-80)-- 应用场景
  • 官方网站内容可做证据吗百度软件推广联盟
  • 做网站的好处网站开发课设
  • 解决:谷歌浏览器提示“此扩展程序已停用,因为它已不再受支持”已解决
  • 【小程序】微信开发者工具上调用api接口可以,到了线上调用发现提示wx.request调用报错,原来是https协议问题
  • 智能指针三部曲:unique·shared·weak 的三角恋
  • gps的时间比实际晚8小时怎么办
  • 中小企业网站建设市场视频号小店