git操作

一、独立开发项目

1.新项目克隆代码:git clone git地址

2.git add -A

3.git commit -m "提交代码"

4.git push origin master(要提交的分支名称)

5.git pull origin master (日常开发拉最新代码)

二、协同配合的项目

1.git clone 地址

2.git checkout master

3.git pull origin master

4.git checkout -b feature_xuxj

5.git push -u origin feature_xuxj

主分支:master

保护分支:relsase

子分支:feature_xuxj

提交代码过程:

1.git pull origin relsase

2.git add -A

3.git commit -m "提交代码"

4.git push origin feature_xuxj

5.git merage 合并代码,一般是手动合并,没问题再确认合并,这一步不一定是命令行合并

三、常见命令

1.git log #查看提交日志

2.git log --oneline #查看提交历史,找到要撤销的提交的 hash

3.git branch backup-branch #创建备份分支

3.代码回滚的办法:

方法一:重置到指定提交(彻底删除后续提交)

git reset --hard +(对应的hash)

方法二:反向提交(安全撤销,保留历史)

1. 查看提交历史,找到要撤销的提交的 hash

git log --oneline

2. 创建反向提交(撤销指定版本的更改)

git revert <commit-hash> # 例:git revert a1b2c3d

3. 解决冲突(如有)并提交

git add .

git commit -m "Revert commit: a1b2c3d"

4. 推送到远程

git push origin <分支名>

4.重置本地代码(用git最新的全量代码覆盖本地除依赖外的全部代码)

git fetch origin

git reset --hard

注意:git pull origin master 是拉取最新的代码,和本地不一样的代码或者文件会进行替换,如果本地有不一样的文件会保留!!!

5.强制推送(不太建议这么干)

git push --force #强制推送风险:会覆盖远程历史,确保团队其他成员知晓

6.git init #初始化新仓库

7.基础操作:

初始化仓库

https://gitee.com/ruowu666666/cool-car.gitgit

克隆远程仓库

git clone https://github.com/user/repo.git

查看当前状态

git status

添加所有修改到暂存区

git add .

提交更改

git commit -m "描述信息"

推送代码到远程

git push origin 分支名

8.分支管理:

创建新分支

git branch feature-xxx

切 main

git switch main # (Git 2.23+)

创建并切换分支

git checkout -b hotfix-xxx

删除本地分支

git branch -d 分支名

查看所有分支(含远程)

git branch -a

关联本地分支到远程

git push -u origin 分支名

9.代码回退:

撤销工作区修改(单个文件)

git checkout -- 文件名

撤销暂存区的修改

git reset HEAD 文件名

回退到上个版本(保留修改)

git reset --soft HEAD~1

彻底回退到某提交

git reset --hard commit_id

撤销某次提交(生成新提交)

git revert commit_id

10.协作同步:

拉取远程更新(合并)

git pull origin 分支名

拉取远程更新(变基)

git pull --rebase origin 分支名

强制推送(覆盖远程)

git push --force-with-lease # 比--force更安全

解决冲突后继续合并

git merge --continue

解决冲突后继续变基

git rebase --continue

11.查看信息:

查看提交历史

git log --oneline --graph -n 10

查看文件修改历史

git blame 文件名

查看工作区与暂存区差异

git diff

查看最近提交内容

git show HEAD

搜索提交历史

git log -S "关键字"

12.高级技巧

临时保存修改

git stash save "备注"

git stash pop # 恢复

修改最后一次提交

git commit --amend

交互式变基(合并/修改提交)

git rebase -i HEAD~3

清理未跟踪文件

git clean -fd

找回误删的提交

git reflog # 找到commit_id后reset

13.标签管理:

创建标签

git tag v1.0.0 -m "正式版"

推送标签到远程

git push origin --tags

删除远程标签

git push origin :refs/tags/v1.0.0

14.配置相关:

设置用户名/邮箱

git config --global user.name "Your Name"

git config --global user.email "email@example.com"

生成SSH密钥

ssh-keygen -t ed25519 -C "your_email@example.com"

设置默认编辑器(VSCode)

git config --global core.editor "code --wait"

15.如果是重新换个文件夹克隆的项目

克隆之后本地还运行修改了,但是想提交代码

1.git branch 运行之后检查是否有你要提交的分支:例如如果看不到 feature_xuxj,说明你不在这个分支上。

2.git checkout -b feature_xuxj 或者新版 git switch -c feature_xuxj

3.git push -u origin feature_xuxj -u 会把本地分支与远程分支关联起来,以后只需要 git push 即可

注意:本地叫 feature_xuxj,远程叫 feature_xuxj_dev,可以:git push origin feature_xuxj:feature_xuxj_dev

总结:当遇到上述问题时 git status + git branch

相关推荐
古德new2 小时前
openFuyao AI大数据场景加速技术实践指南
大数据·人工智能
金融小师妹2 小时前
非农数据LSTM时序建模强化未来降息预期,GVX-GARCH驱动金价4300点位多空博弈
大数据·人工智能·深度学习
yumgpkpm3 小时前
Iceberg在Cloudera CDP集群详细操作步骤
大数据·人工智能·hive·zookeeper·spark·开源·cloudera
鹧鸪云光伏3 小时前
如何选择光储一体化方案设计软件
大数据·人工智能·光伏·光储
大柏怎么被偷了4 小时前
【Git】企业级开发模型
git
CES_Asia4 小时前
机器人“奥运会”燃动北京——CES Asia 2026全球机器人性能挑战赛与展览定档
大数据·人工智能·机器人
Garfield20054 小时前
Git 分支拓扑实践
git·拓扑
DKNG4 小时前
【Windows Host】 hosts配置增加访问github流畅度
人工智能·git·github
yumgpkpm5 小时前
Iceberg在Hadoop集群使用步骤(适配AI大模型)
大数据·hadoop·分布式·华为·zookeeper·开源·cloudera