Git客户端

  • Git客户端取决于平台的选择,最主要有几种客户端
    • 命令行 [Mac 推荐使用Iterm2]
    • Git客户端,可在官网下载,既有Mac的客户端也有Win的客户端,非常方便

搭建项目

  • 第一步需要找到对应的项目,进入到项目详情中。点击红色箭头按钮指向的地址。复制地址。
    如何使用Git常用命令进行项目管理
    注意:如果想要配置SSH协议拉取代码的话需要配置SSH秘钥免密

  • 如果没有权限的话会提示如下
    如何使用Git常用命令进行项目管理

  • 切换到HTTPS协议进行拉取

    • git clone http://xx/back-java/fly-system-sale.git 等待代码拉取完毕
  • 使用cd命令,进入到对应目录下
    如何使用Git常用命令进行项目管理

  • 使用git branch进行查看,项目拉下来都是默认的master分支

  • 如果想切换到某个分支上,使用git checkout

    • git checkout -b develop origin/develop 表示在本地创建一个跟远程develop分支相同的分支

提交代码

  • 编写代码时,可以随时使用git status 查看当前的工作空间中是否有多代码变动
    • 如果出现的是nothing to commit, working tree clean表示当前没有进行代码更新
    • 如果有相关的代码改动, 则会出现红色的代码标识为Modified的代码
      如何使用Git常用命令进行项目管理
    • 如果代码开发完毕,可以进行代码提交【友情提示,多人共同开发前,使用git pull先拉取一下最新的代码,或者使用IDEA中的拉取进行拉取,Merge相关的代码】
      • 使用git add .,表示将本地代码提交到工作区域
      • 使用git commit -a -m “comment message” 提交commit log,具体内容是本次开发所涉及的相关内容的描述
    • 最终使用git push 进行代码推送,如果分支未跟远程分支进行关联,需要先进行关联

常用Git命令

  • git add 添加文件到工作空间
  • git commit -m “description” 提交文件
  • git clone [url] [project-name] 克隆项目
  • git status 查看当前git目录下的文件的情况
  • git diff 查看暂存空间中修改的文件
  • git diff -staged 将暂存空间的修改与上次提交作比较
  • git rm (–cached) file_name 删除文件
  • git mv origin_file target_file 对git中的文件进行名称修改
  • git log 查看项目中的提交日志
    • -p 显示每次提交引入的差异
    • -2 显示最后提交的2条
    • –stat (hash-objects) 查看分支中那些文件有进行修改,增加或删除了多少行数据
    • –pretty=oneline 格式化输出,每一个commit一行
    • –since 自动什么时候开始
  • git commit
    • –amend 如果刚提交了内容,需要将当前代码提交到上次的快照当中,可以使用此参数
  • git reset HEAD file_name 将文件从暂存区中移除
  • git checkout – CONTRIBUTING.md 将某个文件进行回滚 (谨慎使用此命令)
  • git remote -v 查看远程仓库地址URL
  • git fetch [remote-name] 从远程分支拉取内容
  • git push [remote-name] [branch-name] 将当前分支推送到远程
  • git branch [branch_name] 创建一个分支
  • git checkout [branch_name] 切换分支
  • git branch -d [branch_name] 删除某个分支

Git数据恢复

  • git reset --hard 1a410efbd13591db07496601ebc7a059dd55cfe9 强制回滚到某一个节点上
  • git reflog 每次进行操作时,git都会默认将操作记录到HEAD中
  • git log -g 查看所有的log
  • git branch recover-branch hash-objets 创建新分支
  • git log --pretty=oneline recover-branch 查看当前分支上存在哪些内容
  • git fsck --full 修复数据
  • git rev-list --objects --all | grep 83baae61804e65cc73a7201a7252750c76066a30 查找比较大的文件名称

.git目录说明

  • config 项目配置项
  • description Git-Web项目描述
  • info 提供全局忽略规则,就像是项目中的.gitignore文件一样
  • 客户端或者是服务端的钩子脚本
  • objects 存储所有的内容的数据库
  • refs 存储commit objects的指针内容(pointer)
  • HEAD 当前checkout下来的是哪一个分支
  • index 你存储内容的暂存信息

扩展

  • Git中的文件存在两种状态,跟踪和未跟踪。
    - 跟踪的文件就是上一个快照,它不能进行修改以及暂存
    - 所有未跟踪的文件都不在快照当中,可以随便进行修改

  • Git中.gitignore文件用来忽略项目中不需要提交的文件的pattern集合

  • Git中使用git fetch只是将文件从远程拉取到本地的仓库中,还需要使用merge才能将文件合并到工作目录中

相关文章:

  • 2021-12-08
  • 2022-12-23
  • 2021-05-25
  • 2021-08-01
  • 2021-11-02
  • 2021-11-03
  • 2021-04-15
  • 2021-12-17
猜你喜欢
  • 2022-12-23
  • 2021-11-03
  • 2021-09-20
  • 2021-11-03
  • 2021-09-29
  • 2021-07-18
相关资源
相似解决方案