Git命令的使用<简>

常用命令

  • 获取命令简要说明
    git <参数> -h

  • 列出 Git 所有的配置
    git config --list

  • 检查 Git 的某一项配置
    git config <变量名>

  • 在文件夹下初始化Git仓库
    git init

  • 克隆仓库
    git clone {url}
    -o <自定义仓库名>
    -b <分支名>

  • 删除库(勿用)
    rm -rf <库名>

  • 查看仓库中的文件状态
    git status
    详细说明

  • 暂存文件
    git add <文件名>

  • 忽略暂存文件配置
    在文件夹下创建一个.gitignore文件,将忽略暂存的文件写入其中
    格式规范

  • 提交更新
    git commit
    -m '提交信息' 增加提交的信息
    -a 对跟踪文件的暂存与提交同时进行

  • 移除暂存区文件
    从Git中删除修改过的、暂存区里的、本地的文件
    git rm <文件名>
    -f 强制删除,
    --cached 本地文件不删除

    手动删除被Git管理的文件,Git依旧会有记录

  • 重命名文件
    git mv <原文件名> <新文件名>

  • 查看提交历史
    git log
    详细内容

  • 覆盖提交(谨慎使用
    git commit --amend 覆盖上一次提交的记录,完成本次提交

  • 取消暂存(谨慎使用
    git reset HEAD <文件名>

  • 取消修改(谨慎使用
    git checkout -- <文件名>

远程仓库的使用

  • 列出每一个远程仓库简写名
    git remote

  • 列出每一个远程仓库的简写名和URL
    git remote -v

  • 添加远程仓库
    git remote add <仓库名> <url>

  • 从远程仓库中拉取
    git fetch <仓库名>

    更新的拉取操作后要合并分支
    git merge

  • 推送到远程仓库
    git push <仓库名> <分支名>
    git push <仓库名> <本地分支名>:<远程分支名>

  • 查看远程仓库
    git remote show <仓库名>

  • 修改远程仓库简写名
    git remote rename <原名> <新名>

  • 删除远程仓库
    git remote rm <仓库名>

标签

  • 列出标签
    git tag -l <"筛选字符串,通配符"> 可加入正则表达式筛选标签
  • 创建标签
    • 附注标签(- a
      git tag -a <标签名> -m "标签信息"
    • 轻量标签
      git tag <标签名>
    • 补标签
      git tag -a <标签名> <对应提交校验和>
  • 将标签推送到远程仓库
    • 指定标签
      git push <仓库名> <标签名>
    • 所有标签
      git push <仓库名> --tags
  • 删除标签
    git tag -d <标签名>
    • 从远程仓库删除标签
      git push <仓库名> --delete <标签名>
  • 查看标签所指向的文件版本
    git checkout <标签名> (非必要,不要用)
    git show <标签名>

分支

  • Git分支详细说明

  • 创建一个分支
    git branch <分支名>

  • 切换分支
    git checkout <分支名>

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

  • 合并分支
    在要合并入的分支下操作
    git merge <被合并的分支名>

  • 删除分支
    git branch -d <分支名>
    当要删除的分支未合并,会失败
    强制删除(谨慎使用
    git branch -D <分支名>

  • 合并冲突
    查看合并状态
    git status
    退出合并状态
    git merge --abort

    • 各分支都有对一个文件内容进行修改过,合并会造成冲突
    • 合并中间态,对相应冲突文件进行修改
    在冲突文件中会标识:
    <<<<<<< HEAD
    冲突内容1
    =======	
    冲突内容2
    >>>>>>> <分支名>
    解决办法:
    - 将包裹区域全部删除,输入留下的内容(可选留冲突内容)
    
    • 解决冲突后的文件需要git add <文件名>标记冲突已解决,并提交git commit
  • 分支管理
    查看当前所有分支
    git branch
    查看每一个分支最后一次提交
    git branch -v
    查看已合并到当前分支的分支
    git branch --merged
    查看未合并到当前分支的分支
    git branch --no-merged

  • 跟踪分支
    查看所有跟踪分支
    git branch -vv
    设置远程跟踪分支
    git checkout -b <本地分支名> <仓库名>/<分支名>
    git branch -u <仓库名>/<分支名>

    设置远程跟踪分支后,每次推送git push即可

  • 删除远程分支
    git push <仓库名> --delete <分支名>

变基

变基:提取当前分支中引入的补丁和修改,在目标分支上应用一次。
与合并的不同点:合并需要保存所有分支修改的历史记录版本(多分支),而变基会将分支上的修改完全递交给另一个分支,在历史记录版本上只会有一个分支的记录(单分支)。

  • 到当前分支上执行
    将提交到当前分支上的所有修改都移至目标分支上
    git rebase <目标基底分支>
    当有多个分支,只想变基其中两支,而排除一支
    --onto <目标基底分支> <需排除的分支> <当前分支>

    回到目标分支
    执行git merge <之前分支名>快速合并
    变基完成

### 使用 `git remote add` 命令添加远程仓库并上传新项目 #### 1. 初始化本地 Git 仓库 在开始前,需确保当前目录是一个有效的 Git 仓库。如果没有初始化过,可以运行以下命令: ```bash git init ``` 该命令将在当前目录下创建一个隐藏的 `.git` 文件夹,标志着这是一个新的 Git 版本控制仓库[^1]。 #### 2. 添加文件至暂存区 将所有需要版本控制的文件加入到暂存区域中: ```bash git add . ``` 如果只需要添加某些特定文件而非全部文件,则可以用 `git add <filename>` 来单独处理每一个文件。 #### 3. 提交更改到本地仓库 完成文件的添加后,执行提交操作以保存这些改动的历史记录: ```bash git commit -m "Initial commit of the new project" ``` 这里的 `-m` 参数后面跟着的是本次提交的日志信息,建议写得清晰明了一些以便日后查阅[^2]。 #### 4. 设置远程仓库地址 当准备好向某个在线平台比如 GitHub 发布你的作品时,就需要先告诉 Git 这个地方在哪里。使用 `git remote add` 命令来指定远程服务器的位置: ```bash git remote add origin https://github.com/your-username/your-repository.git ``` 其中,“origin” 是给定的那个远端资源的一个称,默认情况下大家都习惯这么称呼它;而后面的 URL 则是你所拥有的那个具体的仓库链接[^3]。 #### 5. 下载远程最新内容(如果有) 为了避免可能存在的冲突,在正式推送之前最好先把最新的东西拉下来同步一下: ```bash git pull origin main --allow-unrelated-histories ``` 注意这里假定了对方的主要分支叫做 'main' 。如果你面对的传统命名法下的 'master' 分支,请调整相应的名称即可[^4]。 #### 6. 推送到远程仓库 最后一步就是把我们精心制作的作品分享出去啦!只需单的一句命令就能达成目的: ```bash git push -u origin main ``` 同样地,假如目标分支名仍沿用旧版术语‘master’的话,记得替换成对应的标签哦。另外加上 '-u' 参数可以让今后无需每次都重复指定期望推送的目标分支[^5]。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值