GIt及Github操作

本文详细介绍了Git的特点、常用操作命令以及GitHub的使用方法。涵盖了初始化仓库、版本控制、分支管理、解决冲突、代码合并、远程仓库同步等关键知识点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Git及Github操作


分享一些git及github的操作命令的总结

  • git特点
    * 分布式
    * 版本控制

    • git init 初始化git仓库

      • .git为隐藏目录,这是版本库
    • 查看

      • git log 查看版本记录
      • git reflog 查看历史操作记录
      • cat 文件 查看文件内容
      • git status 查看工作树的状态
      • git log --graph --pretty=oneline 分成一行查看提交记录
    • 回到某一版本

      • git reset --hard HEAD^ 回到当前版本的前一个版本
      • git reset --hard HEAD~n 回到当前版本的前n个版本
      • git reset --hard 版本编号(前7位)
    • 撤销版本(原来的commit还有,撤销会生成一条新的commit但已经回退版本)

      • git revert HEAD 撤销前一次的commit
      • git revert HEAD^ 撤销前前一次的commit
      • git revert fa042ce --撤销指定的版本,撤销也会作为一次提交进行保存。
      • git revert B^…D --撤销B-D之间的多次提交(会出现多次commit,注意这里是B^)
      • git revert -n B^…D --撤销B-D之间的多次提交(只出现一次commit)
      • 例如:git revert -n OLDER_COMMIT^…NEWER_COMMIT (只出现一次commit)
    • 工作区(Working Directory) 暂存区index/stage 版本库(Repository)

      • git add 把文件修改添加到暂存区
      • git commit 把暂存区的所有内容提交到当前分支
      • git checkout – 文件 丢弃工作区的改动
      • git reset HEAD 文件 把暂存区的修改撤销掉,重新放回工作区
    • 对比文件的不同

      • git diff HEAD – 文件1 对比文件1工作区中和HEAD版本中的不同
        //其中 -代表HEAD中文件的内容 +代表工作区中文件的内容
      • git diff HEAD HEAD^ – 文件1 对比文件1的HEAD和前一版本的不同
    • 删除文件

      • rm 文件1

        • 继续删除:git rm 文件1,git commit
        • 撤销删除:git checkout --文件1
    • 分支

      • git branch 查看分支

      • git branch dev 创建分支

      • git checkout master 切换分支

      • git checkout -b newDev 创建并切换分支

      • git merge dev 合并分支(先切换到master,然后merge 其它分支)

        • Fast-forward快进模式,直接把master指向dev的当前提交,所以合并速度非常快
      • git branch -d dev 删除分支

    • 解决冲突

      • 1.master和dev在同一文件下各有修改,合并时,用<<<<<<<,=======,>>>>>>>标记出不同分支的内容

      • 2.master和dev在不同文件下各有修改,合并时,不能进行快速合并, 所以git提示输入合并说明信息,输入之后合并内容之后git会自动创建一次新的提交

      • 强制禁用fast forward模式,git就会在merge时生成一个新的commitgit merge --no-ff -m “”
        **如果有冲突-先沟通-没问题,删除掉产生的无用行.重新编译,编译没有问题,提交代码 * BUG分支-暂存代码

      • 每个bug都可以通过一个新的临时分支来修复,修复后,合并分支,然后将临时分支删除。

      • git stash 把当前工作现场“储藏”起来,等以后恢复现场后继续工作

      • git stash list 查看工作区现场

      • git stash pop 恢复工作区现场

      • git stash clear 清空git栈场景:

      • 1.在dev上开发,反馈的bug要马上处理

      • 2.git stash

      • 3.切换到master,创建bug001分支

      • 4.修复bug并提交

      • 5.切换到master,合并分支,最后删除bug001分支.

      • 6.切换回dev分支,git stash pop恢复现场

    • 使用github

      1. git clone git地址
      2. 创建分支
      3. 提交文件
      4. git push origin 分支名称 //推送分支
      5. git branch --set-upstream-to=origin/远程分支名称 本地分支名称//将本地分支跟踪服务器分支
      • git pull origin 分支名称 //从远程分支上拉取代码
    • 开发过程

      1. 在自己的电脑上,生成ssh公钥,然后把公钥给项目经理,项目经理把它添加的服务器上面。
      2. 项目经理会给每个组员的项目代码的地址,组员把代码下载到自己的电脑上。
      3. 创建本地的分支dev,在dev分支中进行每天的开发。
      4. 每一个员工开发完自己的代码之后,都需要将代码发布远程的dev分支上。

    git merge 每天上班前:保证代码为主分支最新代码
    git push 每天下班前:上传到主分支
    正常开发每日流程:git clonegit checkout dev
    切换分支写完代码后git pull master
    git checkout dev
    git merge master
    编译没有问题
    git push origin dev

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值