当前位置: 首页 > news >正文

php网站开发工程师招聘要求施工企业现状

php网站开发工程师招聘要求,施工企业现状,承接电商网站建设,简单网站建设模板下载本篇文章的环境是在 Ubuntu/Linux 环境下编写的 文章目录 版本控制器Git 基本操作安装 Git创建 Git 本地仓库配置 Git认识工作区、暂存区、版本库添加文件修改文件版本回退撤销修改删除文件 版本控制器 在日常工作和学习中#xff0c;老板/老师要求我们修改文档#xff0c;…本篇文章的环境是在 Ubuntu/Linux 环境下编写的 文章目录 版本控制器Git 基本操作安装 Git创建 Git 本地仓库配置 Git认识工作区、暂存区、版本库添加文件修改文件版本回退撤销修改删除文件 版本控制器 在日常工作和学习中老板/老师要求我们修改文档但修改可能不尽人意多次修改后可能还不如最初的版本但如果是直接在原文档上修改那我们是否还能找回最初的版本呢 若每一次大改都是在复制出的副本上修改可以解决上述原文档丢失的问题但随着版本数量不断增多我们还能记得每个版本各自修改了什么吗 版本控制器就是为了解决上述问题而诞生的。所谓版本控制器就是一个可以记录工程的每一次改动和版本迭代的管理系统同时也方便多人协同作业 Git 基本操作 安装 Git 可以使用 git 或 git --version 查看是否已经安装了GIt 如果bash 响应的是 git: command not found类似的话语那就是没有安装git 安装 Git #Centos sudo yum -y install git #Ubuntu sudo apt-get install git -y查看 Git 版本 git --version创建 Git 本地仓库 Git 进行版本控制的方式是使用仓库对代码进行管理 创建一个Git 本地仓库的命令为git init注意命令要在文件目录下执行例如 创建本地仓库后会多出来一个.git隐藏文件这个目录就是Git用来跟踪管理仓库的 其目录结构如下 ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ tree .git/ .git/ ├── branches ├── config ├── description ├── HEAD ├── hooks │ ├── applypatch-msg.sample │ ├── commit-msg.sample │ ├── fsmonitor-watchman.sample │ ├── post-update.sample │ ├── pre-applypatch.sample │ ├── pre-commit.sample │ ├── pre-merge-commit.sample │ ├── prepare-commit-msg.sample │ ├── pre-push.sample │ ├── pre-rebase.sample │ ├── pre-receive.sample │ ├── push-to-checkout.sample │ └── update.sample ├── info │ └── exclude ├── objects │ ├── info │ └── pack └── refs├── heads└── tags配置 Git 当安装 Git 后很重要的一步是配置 用户名称 和 e-mail地址命令如下 git config -l #以列表形式显示配置 git config user.name Your name #配置用户名称 git config user.email email #配置email使用 --unset 选项删除配置例如 git config --unset user.name git config --unset user.email可以使用--global 这个选项该选项的效果是使得当前机器上所有的 Git 仓库都使用这个配置 git config --global user.name Your name #配置用户名称 git config --global user.email email #配置email使用 --global 设置的配置不能直接使用--unset删除而是也需要携带--global git config --global --unset user.name 认识工作区、暂存区、版本库 工作区和.git同级的目录下的文件/目录 暂存区stage或index。一般存放在.git目录下的 index 文件(.git/index)中暂存区有时也就索引(index) 版本库又名仓库英文名repository。.git就是Git的版本库。版本库里的所有文件都可以被Git管理起来每个文件的修改、删除Git 都能跟踪以便任何时刻都可以追踪历史或者在将来某个时刻可以“还原” 图中左侧为工作区右侧为版本库。其中我们重点关注暂存区 在创建 Git 版本库时Git 会为我们自动创建一个唯一的 master分支以及指向 master 的一个指针HEAD 当对工作区修改(或新增)的文件执行git add命令暂存区目录树的文件索引会被更新 当执行git commit 提交操作master分支会做出相应的更新可以简单理解为暂存区的目录树才真正被写到版本库中 小总结必须通过git add和git commit命令才能将工作区的文件添加到仓库(版本库)中进行管理 添加文件 在包含.git的目录下新建一个ReadMe文件使用git add命令将文件添加到暂存区 git add [file1] [file2] #可添加一个或多个文件到暂存区 git add [dir] #添加指定目录到暂存区 git add . #添加当前目录下的所有文件改动到暂存区 git add -f [file] #-f选项表示强制添加再使用git commit命令将暂存区内容添加到本地仓库中 注意提交时要对本次提交进行“描述”记录提交的细节方便后续查看得知此次提交改动了些什么这是很重要的一步也绝对不能省略 git commit -m 描述 #提交暂存区全部内容到本地仓库中 git commit [file1] [file2] -m 描述 #提交暂存区的指定文件到本地仓库成功提交后Git会告诉我们一些改动的细节示例 ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ touch ReadMe ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ vim ReadMe ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ cat ReadMe hello git ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ git add . ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ git commit -m new file:ReadMe [master (root-commit) 0008577] new file:ReadMe1 file changed, 1 insertion()create mode 100644 ReadMe使用git log命令可以查看历史提交记录 ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ git log commit 000857774f55793cf3ba54f014aaa239dc226609 (HEAD - master) Author: bao-bao-hai-mian 1076847758qq.com Date: Sun Sep 15 20:12:53 2024 0800new file:ReadMegit log显示从最近到最远的提交日志并且可以看到commit 的描述信息 还可以加上--prettyoneline选项让消息简洁些 ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ git log --prettyoneline 000857774f55793cf3ba54f014aaa239dc226609 (HEAD - master) new file:ReadMe日志消息的一大串数字是每次提交的commit id(版本号)是用 SHA1 计算出的一个很大的数字用十六进制表示 再添加几个文件 ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ touch file1 file2 file3 ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ git add . ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ git commit -m add three file:file1 file2 file3 [master 7c61b82] add three file:file1 file2 file33 files changed, 0 insertions(), 0 deletions(-)create mode 100644 file1create mode 100644 file2create mode 100644 file3此时我们查看.git的目录结构 ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ tree .git .git ├── branches ├── COMMIT_EDITMSG ├── config ├── description ├── HEAD ├── hooks │ ├── applypatch-msg.sample │ ├── commit-msg.sample │ ├── fsmonitor-watchman.sample │ ├── post-update.sample │ ├── pre-applypatch.sample │ ├── pre-commit.sample │ ├── pre-merge-commit.sample │ ├── prepare-commit-msg.sample │ ├── pre-push.sample │ ├── pre-rebase.sample │ ├── pre-receive.sample │ ├── push-to-checkout.sample │ └── update.sample ├── index ├── info │ └── exclude ├── logs │ ├── HEAD │ └── refs │ └── heads │ └── master ├── objects │ ├── 00 │ │ └── 0857774f55793cf3ba54f014aaa239dc226609 │ ├── 0e │ │ └── 6b1780b73cd9220ec5073dc64b42f7ad4bd945 │ ├── 15 │ │ └── a37e9ef171cca4a5d985fccd1fcf9414b2c7cf │ ├── 4b │ │ └── 825dc642cb6eb9a060e54bf8d69288fbee4904 │ ├── 7c │ │ └── 61b823e2c036bc9e37ec0d9676fab511b1db1e │ ├── 8d │ │ └── 0e41234f24b6da002d962a26c2495ea16a425f │ ├── e6 │ │ └── 9de29bb2d1d6434b8b29ae775ad8c2e48c5391 │ ├── info │ └── pack └── refs├── heads│ └── master└── tags相比于之前我们看到的 .git 结构多了一些东西 index就是暂存区git add后的内容都是添加到这里的HEAD是指向当前分支的指针默认指向master ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ cat .git/HEAD ref: refs/heads/master而master分支其实就是最近一次提交的commit id ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ cat .git/refs/heads/master 7c61b823e2c036bc9e37ec0d9676fab511b1db1eobjects为 Git 的对象库里面包含了创建的各个版本库对象及内容。当执行git add命令时暂存区的目录树被更新同时工作区修改(或新增)的文件内容被写入到对象库中的一个新的对象中就位于.git/objects目录下 这些文件不能直接使用cat查看都是经过sha(安全哈希算法)加密过的文件不过可以使用git cat-file查看版本库对象内容 ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ git cat-file -p 000857774f55793cf3ba54f014aaa239dc226609 tree 0e6b1780b73cd9220ec5073dc64b42f7ad4bd945 author bao-bao-hai-mian 1076847758qq.com 1726402373 0800 committer bao-bao-hai-mian 1076847758qq.com 1726402373 0800new file:ReadMe显示正是一次提交的相关信息 其中还有一行tree commit id我们使用同样的方式查看 ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ git cat-file -p 0e6b1780b73cd9220ec5073dc64b42f7ad4bd945 100644 blob 8d0e41234f24b6da002d962a26c2495ea16a425f ReadMe再看 ReadMe 对应的commit id ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ git cat-file -p 8d0e41234f24b6da002d962a26c2495ea16a425f hello git这正是我们提交的 ReadMe 中的内容 小总结本地 git 仓库中有几个文件和目录很特殊 index暂存区git add后会更新其内容HEAD指向当前分支的指针refs/heads/master保存最近一次提交的commit idobjects包含了创建的各个版本库对象及内容此处可以简单理解为存放了 git 维护的所有修改 修改文件 Git 跟踪并管理的并不是文件而是修改 新增文件删除文件修改文件内容都是修改 示例 往 ReadMe 文件中添加一些内容 ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ cat ReadMe hello git ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ vim ReadMe ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ cat ReadMe hello git i am coding i am coding i am coding此时工作区的ReadMe 与 暂存区和版本库的 ReadMe 内容是不同的。git status命令用于查看当前仓库状态 ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ git status On branch master Changes not staged for commit:(use git add file... to update what will be committed)(use git restore file... to discard changes in working directory)modified: ReadMeUntracked files:(use git add file... to include in what will be committed).ReadMe.swpno changes added to commit (use git add and/or git commit -a)Git 检查到 工作区的 ReadMe 被修改了但没有添加和提交并建议我们更新修改 git diff [file] #显示暂存区和工作区文件的差异 git diff HEAD -- [file] #显示版本库和工作区文件的差异版本回退 回退是版本控制器很重要的能力 使用git reset回退版本具体如何回退根据参数而定 git reset [--soft | --mixed | --hard] [HEAD]--soft对于工作区和暂存区的内容都不变只是将版本库回退到某个指定版本--mixed默认选项使用时可以不带该参数。将暂存区和版本库回退工作区不变--hard工作区、暂存区、版本库都会回退HEAD要回退到的版本 指定commit idHEAD 表示当前版本HEAD^表示上个版本HEAD^^表示上上个版本以此类推以可以使用~数字表示HEAD~0表示当前版本HEAD~1表示上个版本以此类推 如果当前有三个版本我们想回退到版本二可以通过git log查看版本二的commit id但当我们回退到版本二后再使用git log将不会看到版本三的commit id 这是否意味着我们不能反悔回到版本三呢其实不是可以使用git reflog其记录了本地的每一个日志 ubuntuVM-12-11-ubuntu:~/lesson/gitcode$ git reflog 7c61b82 (HEAD - master) HEAD{0}: commit: add three file:file1 file2 file3 0008577 HEAD{1}: commit (initial): new file:ReadMe查出来的是部分的commit idGit 支持使用部分commit id实现回退 回退的效果图如下 撤销修改 撤销修改在不同的场景下有不同的操作 场景一 只撤销工作区的修改 如果我们对工作区的代码进行了较大幅度的改动但没有添加与提交此时我们想撤销这些修改如何操作呢 手动修改一定是不推荐的可能会出现该删的没删不该删的删了的情况 使用git diff可以知道修改了什么但还是需要手动修改仍可能出现问题 Git 提供了 git checkout -- [file]命令让工作区的文件回到最近一次add或者commit时的状态该命令一定要记得带上--不然会是完全不一样的效果 git checkout -- [file]场景二 只撤销暂存区的内容 直接使用git reset git reset --mixed [commit id]--mixed选项就是只回退暂存区内容 场景三 只撤销版本库的内容 直接使用git reset git reset --hard HEAD^使用--hard选项只回退版本库内容HEAD^表示回退到上一个版本 删除文件 在 Git 中删除文件也是一次修改可以使用add和commit如果误删那么还可以按照场景对修改进行撤销 Git 提供命令可以删除工作区文件并add也删除暂存区内容 git rm [file]不过还没有提交所以还需要git commit 如此文件就从版本库中被删除了 以上就是本篇博客的所有内容感谢你的阅读 如果觉得本篇文章对你有所帮助的话不妨点个赞支持一下博主拜托啦这对我真的很重要。
http://www.w-s-a.com/news/961010/

相关文章:

  • 肥西县住房和城乡建设局网站代驾系统定制开发
  • 网站建设明细报价表 服务器qq是哪家公司的产品
  • html链接网站模板wordpress怎么调用简码
  • 网站域名怎么查简述网站推广的五要素
  • 咸宁网站设计公司app安装下载
  • 丝网外贸做哪些网站最优的赣州网站建设
  • 如何做网站不被查网站开发工程师岗位说明书
  • 做网站需要vps吗网站建设后怎样发信息
  • 网站建立风格二手交易网站开发可参考文献
  • 成都微信网站开发优化大师优化项目有哪些
  • 哪个网站做自考题目免费郑州网站建设公司qq
  • 地方性的网站有前途顺的网络做网站好不好
  • 学校申请建设网站的原因不要网站域名
  • 推荐响应式网站建设子域名查询工具
  • 如何建设学校的微网站广告推广是什么
  • 设计类专业哪个就业前景好网站建设seoppt
  • 济南建站公司网站网站友链查询源码
  • 校园失物招领网站建设涪陵网站建设公司
  • 怎么做盗号网站手机网站建设需要租用什么科目
  • 成品网站是什么意思沈阳seo推广
  • 购物网站后台流程图昆明官网seo技术
  • 创建自己网站全网零售管理系统
  • 江苏省建设厅网站建筑电工证wordpress收费插件大全
  • 北京中国建设银行招聘信息网站宁德蕉城住房和城乡建设部网站
  • 泉州做网站优化哪家好wordpress站点预览
  • 创建门户网站一页网站首页图如何做
  • 服装手机商城网站建设sns社交网站有哪些
  • 无锡工程建设招标网站怎么自己建设公司网站
  • 哪个网站可以学做咸菜安卓软件开发需要学什么软件
  • 自有网站建设的团队遂宁市建设局网站