| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发工具 -> git 的基础用法 -> 正文阅读 |
|
[开发工具]git 的基础用法 |
git 是什么??开源 分布式的版本控制系统,在我们写代码的时候每天记录一个版本,方便我们记录或者回退版本。 git的三层结构git 中有三个区域1.工作区 2.暂存区/缓存区 3.版本库 git使用git 项目的路径中如果出现中文? 可能会出现一些奇奇怪怪的问题 初始化?gie init? ? ? ?是在你当前初始化的这个仓库里面生成一个 .git 的文件夹,这个文件夹千万不能删或者修改了,因为其中保存着我们之前的版本信息,如果删了那么之前我们所有的版本就没有了如果没有,点击左上角查看,把隐藏项目勾上。 查看工作区的文件状态gie status? 如果出现红色的文件,那么就表明本地的工作区有文件没有被 git 所管理 把工作区的文件提交到暂存区git add .? ?代表将工作区所有的文件推到暂存区,这时在查看一下状态,发现刚刚的红色文件,变成绿色的,那么就表明当前的文件已经成功被暂存区所管理了。 把暂存区的文件提交到版本库git commit -m "你本次的提交注释" 查看下我们的提交信息git log 查看一下当前的提交信息 当我们修改了文件夹里面的内容,想要再次提交那么我们也可以直接文件直接从工作区交到版本库 从工作区直接提交到版本库,跳过暂存区注意:要是用如下命令前提是 必须按照上面的流程正常的提交一次(工作区到缓存区? 再到版本库) git commit -am "本次提交的注释" git修改最近一次提交的注释注意:有两个 - -? 这个时候git界面你按下左右键 发现光标在移动 但是你此时还是无法修改你提交的注释,这个时候你要在当前的窗口下 将输入法切换到英文状态 然后按下 s 键? ?移动光标就可以删除和修改了(一定要在英文状态下否则无法删除或添加) 修改好之后? 按下Esc 在最下面输入? :wq? 然后就自动退出你当前的页面了 git commit --amend 把暂存区的内容替换成工作区注意 :git checkout空格--空格文件名? ? git checkout -- 文件名? 当我们修改了代码之后发现怎么也弄不好? ?那么就可以回到上一次好的版本 拉取指定版本库的内容替换暂存区git reset commitid? 用id(a690bedb585ab68082ea7bd8396cc9828a7023f9?)替换commitid git reset?a690bedb585ab68082ea7bd8396cc9828a7023f9 修改当前工作区的文件名mv 旧名字 新名字 git分支每个版本控制系统中都会有一个分支这种操作 只是git中操作分支的速度更快效率更高 举个例子 假设我们准备开发一个项目的新功能,但是这个功能需要两周才能开发完 第一周我们写了百分之50 但是如果我们直接提交可能会造成项目报错无法运行? 那么这个不完整的项目 也会造成你同事没有办法干活了? 但是如果等着你的代码写完你在提交 又会面临着代码丢失的风险 所以有了分支就不怕了? 我们可以创建一个属于我们自己的分支? 这个分支是独立的? 不和其他人分享 那么这样一来我可以把代码传递到我这个分支上? 避免了代码的丢失 也不会影响其他同事工作 查看本地分支git branch 新建分支git branch 新建的分支名 切换分支git checkout 要切换的分支名 删除分支git branch -d 你要删除的分支名 修改分支名git branch -m 旧名字 新名字 合并分支要合并 先切换到主分支上? git merge 你要合并的分支名 解决冲突如果今后工作中代码出现了 <<<<<HEAD ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? =========== ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?>>>>> 这个就叫代码冲突了 出现原因 同一行出现了不同的代码? git 不知道我们需要删除谁 或者保留水 git 就直接用这些符号给我们表示出冲突让我们自行修改 解决方式 你和谁冲突? 你就把谁叫过来? 两个人一人一杯茶? 两个人慢慢删 将版本库里面的所有内容上传到远端git remote add origin 仓库地址? ? ?告诉git要上传到哪 remote? 远程的意思 add? ? ? ? 添加的意思 origin? ? ? 是一个变量名 git push -u origin master? ?上传内容,上传到哪里的地址我们上一步已经添加好了,表示把内容上传到origin 这个地址, master 是上传到远程的master 分支 -u 是我们第一次使用的时候才会用,目的是为了记录一下用户和密码 下次上传就不需要再写了 git push 第二次上传直接这个命令就可以了 git 克隆git clone 仓库地址 git下拉git push ??? 特殊的一个命令?git push -f? 这个命令开玩笑的 ,工作中千万不要用这个命令,表示将目前自己本机的代码库强行推送到远端,并且覆盖,大概就是 除非只有自己一个人使用,不然用push -fore 的都该去死 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 15:07:23- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |