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. 合并更新到本地分支 :切换到你的本地目标分支(如 mainmaster),然后执行 git merge upstream/main(假设原始仓库的主分支叫 main)将更新合并到你的本地分支。
  4. 推送到你的远程仓库 :最后执行 git push origin <你的分支名> 将更新推送到你 GitHub 上的仓库分支。
相关推荐
极光技术熊21 小时前
Spring AI 从入门到精通:构建你的 AI 开发知识体系
后端·github
用户39483951075531 天前
怎么让我的 Agent 真正"懂"我?——关于记忆、经验学习与预测的一些真实体验
github
远航_1 天前
git submodule
前端·后端·github
fthux1 天前
如果你用 Mac,那你可能需要 Noti Shift
macos·开源·github
程序员天天困2 天前
Loop Engineering 实战:/goal 命令让 AI 自己写完整项目
github
徐小夕2 天前
我们开源了一款“框架无关”的思维导图编辑器,3分钟集成到任意系统
前端·javascript·github
小爷毛毛_卓寿杰2 天前
我把 397B 的「Agentic 大脑」塞进了 Xinference,一键部署 Nex-N2
人工智能·架构·github
小爷毛毛_卓寿杰2 天前
我把一个 3B 模型塞进了 Xinference,然后它干掉了 DeepSeek V3.2
人工智能·开源·github
凌奕2 天前
别用文档约束你的 Agent:聊聊 Agent 开发流程的思想
llm·github·agent
和你看星星2 天前
Git rerere:让重复冲突只解决一次
git