【DevOps】git 扫盲

简介: 【DevOps】git 扫盲

正文


git 是一个常用的代码管理工具,但大家可能更多的是停留在使用上(而且是那一种,可视化界面,点点点的形式),甚至不知道各个命令的具体意义,接下来就扫扫盲吧。


git init。创建一个名为 .git 的子目录,其中包含初始化的 Git 仓库中所有不可或缺的初始化文件。它们是 Git 仓库的“骨干”。需要明确的是,这个命令仅仅是进行初始化操作,项目中的文件没有被跟踪。


git clone。从 Git 仓库复制一个已存在的项目到本地。复制涵盖的内容是该 Git 仓库中几乎所有的数据。而不仅仅是复制工作中的文件。当执行 git clone 命令的时候,默认配置是将远程 Git 仓库中所有文件的每个版本进行拉取。

Git 仓库的工作目录中的每一个文件都具备两种状态之一,这两种状态是已跟踪未跟踪


  1. 已跟踪的文件是指已被纳入版本控制的文件,在上一次快照中,存在记录,在工作一段时间后,状态可能是未修改已修改已放入暂存区
  2. 在 Git 仓库的工作目录中,除已跟踪文件以外,其余的都属于未跟踪文件,这些未跟踪文件既不存在于上次快照记录中,又没有被放入暂存区。
  3. 在第一次复制某个 Git 仓库的时候,工作目录中的所有文件都处于已跟踪状态,并处于未修改状态
  4. 在文件被编辑后,由于自上次提交后做了修改,因此 Git 将这些文件标记为已修改。在这个过程中,逐步将这些修改过的文件放入暂存区,然后提交所有已暂存的修改文件,这就是提交更新的一个循环。


git add。是个多功能指令,可以跟踪新文件,可以把已跟踪的文件放入暂存区,还可在合并时把有冲突的文件标记为“已解决”状态。这里,我们将 git add 命令理解为“添加内容到下一次提交中”,而不是“将一个文件添加到项目中”。


git rm。想要从 Git 仓库中删除某个特定文件,就需要先从已跟踪文件清单中清除,再完成提交动作。我们可以通过git rm 命令完成这项任务,并附带从目录中删除这个指定文件。如果只是简单地从工作目录中手动删除某个特定文件,那么,运行 git status 命令时,就会在“Changes not staged for commit” 部分看到先关状态。


如果使用 clone 命令复制一个仓库,那么该命令会自动将这个仓库添加为远程 Git 仓库并默认以 origin 为简写名称


git push [remote-name] [branch-name]。将 master 分支推送至 origin 服务器时,该命令可以将所做的备份推送到远程 Git 仓库,相关命令如下:

git push origin master


上述命令要求复制的服务器具备写入权限,且之前无推送动作,只有这样,该命令才能生效。当同时有复制动作时,非首次推送动作会被拒绝,必须先将上次推送的数据拉取并将其合并,这样才能推送。

目录
相关文章
|
4月前
|
敏捷开发 测试技术 持续交付
阿里云云效产品使用合集之如何将个人账号下的Git仓库转移到企业账号下
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
6月前
|
安全 Serverless 网络安全
阿里云云效产品使用问题之如何拉取自建Git(未开放公网访问)中的代码
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
Devops 测试技术 开发工具
devops| git hooks 实战: 防分支 merge
基于工作中 git 工作流遇到的问题, 实战 git hooks, 防止测试分支合并到开发分支
592 0
|
Devops 开发工具 git
devops之CI极简教学视频---git(下)
devops之CI极简教学视频---git(下)
|
Devops 开发工具 git
【下一代核心技术DevOps】:(三)私有代码库阿里云Git使用
  1. 引言    使用DevOps肯定离不开和代码的集成。所以要想跑通整套流程,代码库的选型也是非常重要的。否则无法实现持续集成。目前比较常用的代码管理有SVN和GIt    如果还使用SVN的,建议尽早迁移到Git上面,不然很费劲的。
1452 0
|
4月前
|
敏捷开发 缓存 前端开发
阿里云云效产品使用合集之前端打包时npm安装卡住一般是什么导致的
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
4月前
|
敏捷开发 弹性计算 持续交付
阿里云云效产品使用合集之同一个主机部署是否支持下载多个制品
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
4月前
|
敏捷开发 监控 Java
阿里云云效产品使用合集之Codeup WebIDE环境下,如何使用通义灵码
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
4月前
|
敏捷开发 测试技术 持续交付
阿里云云效产品使用合集之如何进行大文件的迁移
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
4月前
|
敏捷开发 安全 测试技术
阿里云云效产品使用合集之如何在甘特图视图中看到负责人信息
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。