git命令常用指南

分支

复制代码
查看分支
git branch

创建分支
git branch 分支名

切换分支
git checkout 分支名

创建并切换分支
git checkout -b 分支名

将新文件合并到 master 上
先切换到 master 上,再执行:
git merge 分支名

删除分支
git branch -d 分支名

日志

复制代码
查看提交日志:
git log
查看信息优化:
git log --pretty=online --abbrev-commit --all --graph
撤回到原来状态:
git reset --hard commitID
(可以回到任何状态)
若不慎 clear 之后丢失了 commitID,可以利用 git reflog 还原以往的提交记录
忽略某些文件:
创建 .gitignore 文件,添加需要忽略的文件后缀名(例如 *后缀名)

在本地新建一个文件夹,克隆并关联git仓库

复制代码
初始化本地仓库
git init

设置远程仓库 URL(使用 SSH over 443)
git remote add origin ssh://git@ssh.github.com:443/Westredtomato/aTestGitPractice.git

检查远程 URL
git remote -v

删除现有的 origin
git remote remove origin

克隆时直接指定分支
git clone -b <分支名> <仓库URL>

在文件夹里新增文件夹,如何把新增的文件夹同步更新到git仓库的main分支?

进入已经克隆下来的那个git仓库文件夹。

复制代码
检查状态,会显示出所有未被跟踪的文件(`untracked files`)和已修改但未暂存的文件。
git status

添加到暂存区
git add .
git add your-new-folder/

再次查看状态,会看到文件夹变成了绿色,表示已被添加到暂存区
git status

提交更改
git commit -m "Initial commit"

推送到推送到远程仓库的分支
如果是第一次推送 main 分支,可能会需要这样:
git push -u origin master
之后再次推送,只需要简单的:
git push

之前在一个分支上传了项目文件夹,现在项目文件夹代码有更新,怎么同步到分支上

复制代码
添加更改到暂存区与提交
git add
git commit -m "提交信息"

推送到远程分支
git push origin <分支名>
- 如果远程分支不存在,Git 通常会提示你先创建它,或者你可以使用 `git push -u origin <分支名>` 来推送并同时建立本地分支与远程分支的追踪关系。

处理冲突(!!!先拉取再推送)
- 如果在推送前,远程分支已经有了你本地没有的新提交,直接git push可能会被拒绝
- 这时,拉取远程分支的最新更改到本地
git pull origin <分支名>
并在本地**解决可能出现的合并冲突**(如果有的话),再次提交,然后推送

⚠️ 重要提示:

  • 确保你在正确的分支上:在执行这些操作前,最好先用
  • .gitignore :如果你的新文件夹里有配置文件、日志、依赖包(如 node_modules)等不希望上传到GitHub的文件,请记得先把它们加入 .gitignore 文件,然后再执行 git add,否则这些文件也会被上传。

⚠️ 同步代码的注意事项

  • 确认分支:执行操作前,务必确认当前所在的本地的分支( git branch), 如果不是,使用 git checkout <分支名>。
  • 先拉取再推送:在推送本地更改之前,先执行 git pull 拉取远程最新更改

🤝 处理多人协作与分支同步

如果你的项目是多人协作,且你希望同步的是他人仓库(例如 Fork 的仓库)的更新到你的仓库分支,那么流程会有所不同:

  1. 添加上游仓库为远程源 :使用 git remote add upstream <原仓库URL> 添加原始仓库为远程源(通常命名为 upstream)。
  2. 获取上游仓库的更新 :执行 git fetch upstream 获取原始仓库的最新提交记录。
  3. 合并更新到本地分支 :切换到你的本地目标分支(如 main 或 master),然后执行 git merge upstream/main(假设原始仓库的主分支叫 main)将更新合并到你的本地分支。
  4. 推送到你的远程仓库 :最后执行 git push origin <你的分支名> 将更新推送到你 GitHub 上的仓库分支。
相关推荐
高频因子挖掘机11 小时前
同一交易日出现重复 K 线:去重前先确认时间、来源和粒度
后端·github·api
SL_staff14 小时前
从邮箱传文档到协同流重构:企业文档协作的系统性破局实践
java·开源·github
用户72737441388416 小时前
版本锁定实战:从 `git tag` 到 `package-lock.json` 的完整闭环
github
暖心hebbie设计学习16 小时前
GitHub 热榜周报(10.19)|5 个把 AI 装回本地的开源项目:多 agent 控制台、本地语音、节点式生成(含技术看点)
人工智能·github
用户别睡觉16 小时前
从 0 到 1 开源:基于 FastAPI 和本地大模型打造一个提示词安全网关
github
mr_g16 小时前
一个注解搞定 AGI,两个注解搞定 AMI —— SmartCall 让 Java 对接 Asterisk 简单到离谱
github
sbjdhjd19 小时前
从签名重放到 Agent Harness:一堂安全课程如何把前端逆向、MCP 与工程约束串起来
网络安全·ai·github·agent·webshell·mcp·harness
逛逛GitHub21 小时前
火了两周的 30 万 Star 逆向 GitHub 开源神器,网友都用它来干啥?
github
程序员差不多先生21 小时前
Anthropic 用 5 个月重写了 Git:当 AI Agent 把版本控制系统逼到墙角
人工智能·git·elasticsearch·deepseek v4 pro·kimi k3·glm 5.3·qwen3.7 max
leo_厉锵1 天前
GIT习题
git