git部分命令的简单使用

1.新建代码库

  • git init :在当前目录初始化一个新的Git代码库。
  • git init (project-name) :新建一个目录并初始化为Git代码库。
  • git clone (url) :从远程仓库克隆项目及其代码历史。
  • 1.到仓库项目页

2.复制项目地址

3.克隆拉取代码

  • git clone -b (branch-name) (url) :克隆指定分支的代码到本地。

2. 配置

  • git config --list :显示当前的Git配置。
  • git config -e (--global) :编辑Git配置文件(全局或项目配置)。
  • 1.全局配置
  • git config (--global) user.name "(name)" :设置提交代码时的用户名。

检查

  • git config (--global) user.email "(email address)" :设置提交代码时的用户邮箱。
  • SSH仓库配置
  • 去到上面的文件路径 查看密钥

到仓库配置

3. 文件操作

  • git add (file1) (file2) ... :将指定文件添加到暂存区。
  • git add (dir) :将指定目录及其子目录添加到暂存区。
  • git add . :将当前目录的所有文件添加到暂存区。
  • git add -p :在添加每个变化前进行确认。
  • git rm (file1) (file2) ... :删除工作区文件并将删除操作放入暂存区。 前提是已经提交到本地仓库的文件
  • git rm --cached (file) :停止追踪指定文件,文件保留在工作区。
  • git mv (file-original) (file-renamed) :重命名文件并将操作放入暂存区。

    4. 代码提交

  • git commit -m (message) :将暂存区的内容提交到仓库区。

  • git commit (file1) (file2) ... -m (message) :提交指定文件到仓库区。
  • git commit -a :提交工作区自上次commit之后的变化。
  • git commit -v :提交时显示所有diff信息。
  • git commit --amend -m (message) :用新的commit替代上一次提交。
  • 将新的修改添加到暂存区。假设修改了 main.js 文件
  • git commit --amend --no-edit,--no-edit 参数表示不修改提交信息,直接将暂存区的内容合并到上一次提交中。

5. 分支管理

  • git branch :列出所有本地分支。
  • git branch -r :列出所有远程分支。
  • git branch -a :列出所有本地和远程分支。
  • git branch (branch-name) :新建一个分支但不切换。
  • git checkout -b (branch) :新建一个分支并切换到该分支。
  • git checkout (branch-name) :切换到指定分支。
  • git checkout - :切换到上一个分支。
  • git branch --set-upstream-to=origin/(remote-branch) (branch):建立追踪关系。
  • 先拉一下远程分支 git fetch origin
  • git merge (branch) :合并指定分支到当前分支。 先签出,在合并
  • git cherry-pick (commit) :将某一次的提交合并到其他分支。可能会有合并冲突
  • git branch -d (branch-name) :删除本地分支 D强制删除。
  • git push origin --delete (branch-name) :删除远程分支。

6. 标签操作

  • git tag :列出所有标签。
  • git tag (tag) :在当前commit新建一个标签。
  • git tag (tag) (commit) :在指定commit新建一个标签。
  • git tag -d (tag) :删除本地标签。
  • git push origin :refs/tags/(tagName) :删除远程标签。
  • git show (tag) :查看标签信息。
  • git push (remote) (tag) :提交指定标签。
  • 提交代码,生成标签 在提交指定标签
  • git push (remote) --tags :提交所有标签。

  • 先查看,再推送 有覆盖风险

  • git checkout -b (branch) (tag) :新建一个分支指向某个标签。

  • 从标签 v1.0.0 创建名为 zuofeng/v1.0.1 的分支

7. 查看信息

  • git status :显示有变更的文件。
  • git log :显示当前分支的版本历史。
  • git log --stat :显示commit历史及每次commit变更的文件。
  • git log -S (keyword) :根据关键词搜索代码中提交历史。
  • git log (tag) HEAD --grep feature :显示符合搜索条件的提交。 v1.0.0 到现在版本提交的-m关键词中包含的 登录的 提交

  • git log --follow (file) :显示文件的版本历史。

  • git diff (file_name/所有文件) :查看工作区与暂存区的差异。

  • git diff --cached :查看暂存区与提交版本的差异。
  • git diff HEAD :查看工作区与仓库中最后一次提交版本的差别。

8. 远程仓库操作

  • git remote -v :查看远程仓库信息。
  • git remote add <remote_name> <repository_url> :添加远程仓库。
  • git push <remote_name> <branch_name> :推送本地分支到远程仓库。
  • git pull <remote_name> <branch_name> :拉取远程仓库更新并合并到当前分支。

  • git push -u origin master :推送当前分支到远程仓库并设置上游分支。

    9. 撤销操作

    • git reset :撤销所有暂存的文件。
  • git reset <file_name> :撤销暂存的文件。

  • git reset --soft HEAD~1 :撤销最近一次提交,保留代码修改。
  • git reset --hard HEAD~1 :撤销最近一次提交,删除代码修改。
  • git checkout -- :撤销工作区的修改。暂存区不动,工作区撤销
  • git reflog :查看操作记录。

    10. 其他实用命令

  • git blame <file_name> :查看文件的修改历史。

  • git clean -n :列出未被追踪的文件
  • git clean -f :强制删除未被追踪的文件。

  • git clean -x -f :删除未被追踪的文件,包括.gitignore中忽略的文件。 .gitignore文件

*.log # 忽略所有 .log 结尾的文件

  • git status -sb :简洁输出git status信息
相关推荐
ohMyGod_12332 分钟前
React16,17,18,19新特性更新对比
前端·javascript·react.js
前端小趴菜0534 分钟前
React-forwardRef-useImperativeHandle
前端·vue.js·react.js
@大迁世界34 分钟前
第1章 React组件开发基础
前端·javascript·react.js·前端框架·ecmascript
zhuiQiuMX36 分钟前
脉脉maimai面试死亡日记
数据仓库·sql·面试
Hilaku38 分钟前
从一个实战项目,看懂 `new DataTransfer()` 的三大妙用
前端·javascript·jquery
独行soc40 分钟前
2025年渗透测试面试题总结-2025年HW(护网面试) 33(题目+回答)
linux·科技·安全·网络安全·面试·职场和发展·护网
爱分享的程序员41 分钟前
前端面试专栏-算法篇:20. 贪心算法与动态规划入门
前端·javascript·node.js
我想说一句43 分钟前
事件委托与合成事件:前端性能优化的"偷懒"艺术
前端·javascript
爱泡脚的鸡腿44 分钟前
Web第二次笔记
前端·javascript
良辰未晚44 分钟前
Canvas 绘制模糊?那是你没搞懂 DPR!
前端·canvas