• git hash-object -w README.MF:将这个文件中的内容写到hash-object数据库中。
    git常用指令(分支操作,仓库操作)
    然后使用git cat-file -p 加key,把里面的地址取出来

  • 看下面文件显示红色,是因为,没有把内容提交到栈存取
    git常用指令(分支操作,仓库操作)
    然后提交上去就是可以了
    git常用指令(分支操作,仓库操作)

  • 将文件从栈中删除:git rm --cached MEADME.MF
    git常用指令(分支操作,仓库操作)

  • git add -A:是将所有内容提交,但是通过git status可以查看到这个文件还没有提交到本地仓库中。
    git常用指令(分支操作,仓库操作)

  • git commit MEADME.MF -m ‘first commit 1’ :提交到本地仓库
    git常用指令(分支操作,仓库操作)

  • 查看到本地没有任何待提交的内容
    git常用指令(分支操作,仓库操作)

  • 连接自己的github上面的仓库,并命名为origin:git remote add origin 加仓库地址,就是将本地仓库中的内容提交到远程仓库中
    git常用指令(分支操作,仓库操作)

  • 将本地分支push到远程仓库中,如果直接执行git push会出错,因为本地分支与远程仓库没有建立联系

  • git push --set-upstream origin master(master可以根据子的需要自定义,就是当前分支在远程分支对应的名称)

  • 将本地的分支提交到origin远程仓库中去,然后创建一个新的分支
    git常用指令(分支操作,仓库操作)

  • 如果一个用户想下载我们的文件:git clone +文件的地址 +另起一个命名
    如果文件地址采用的是file+文件的硬盘地址的话,那么拷贝的只是package和info文件
    git常用指令(分支操作,仓库操作)

  • 然后另外一个对这个文件进行修改等操作,修改完之后然后再上传到远程仓库:

  • git add -A;git commit -am ‘2 commit’;git push
    add所有,commit -am是提交所有,git push 这时本地分支与远程仓库已经连接,不需要进行再进行git push --set-upstream origin master

  • 然后在自己的git上面执行git pull(是拉取远程分支更新到本地仓库的操作,比如远程仓库里的学习资料有了新的内容,需要把新内容下载下来的时候,就可以使用git pull 命令。事实上,git pull是相当于从远程仓库获取最新版本,然后再与本地分支合并)(

https://segmentfault.com/a/1190000017030384)

git常用指令(分支操作,仓库操作)

  • 创建一个java工程的目录:
    git常用指令(分支操作,仓库操作)
  • 向里面添加一个包:
    git add 'package com ’ > src/main/java/com/hello.java
    git add src/main/java/com/hello.java
    git add -A(全部提交)
    git status
    git常用指令(分支操作,仓库操作)
  • 查看当前分支
    git常用指令(分支操作,仓库操作)
    其实当前有两个分支,一个是当前分支,另一个是远程分支,git branch -avv
    git常用指令(分支操作,仓库操作)
    可以看出当前有两个分支
  • 下面一步证明这两个分支不是一个分支:
    git常用指令(分支操作,仓库操作)
  • 切换到远程分支:git checkout origin/master(git checkout切换分支的作用)
    git常用指令(分支操作,仓库操作)
  • 创建分支的方法:
    1)基于当前分支 创建一个新的分支
    git常用指令(分支操作,仓库操作)
    2)基于远程分支 创建一个新的分支
    git常用指令(分支操作,仓库操作)
    3)基于一个提交 创建一个新的分支
    首先查看有哪些提交:
    git常用指令(分支操作,仓库操作)
  • 创建一个分支:
    git常用指令(分支操作,仓库操作)
  • 删除分支:
    git常用指令(分支操作,仓库操作)
  • 基于Tag 创建一个分支
    查看远程仓库:git remote
    git常用指令(分支操作,仓库操作)
  • 添加远程仓库:
    git常用指令(分支操作,仓库操作)
  • 新增一个新的远程仓库:
    git常用指令(分支操作,仓库操作)
  • 把当前的分支push新的远程仓库中:
    git常用指令(分支操作,仓库操作)
  • 从这里可以看到master关联的是origin2
    git常用指令(分支操作,仓库操作)
  • 然后我们修改内容的话,直接git push 会提交到origin2中
    如果我们想push origin中怎么办?
    我们可以直接写 git push origin

删除远成仓库:git remote remove origin

日志管理

  • 查看master还有多少没有提交到test中去
    git常用指令(分支操作,仓库操作)
  • 合并test和master
    git常用指令(分支操作,仓库操作)
    这样test与master就没有区别
  • git show 展示的文件内容比git log 更详细一些
    git常用指令(分支操作,仓库操作)
    git常用指令(分支操作,仓库操作)
  • 查询objects文件下的所有内容:
    git常用指令(分支操作,仓库操作)
  • 向文件中写入:
    git常用指令(分支操作,仓库操作)
    后面生成的字节码就是对应这个文件
  • 树对象解决了文件名的问题,它的目的将多个文件名组织在一起,其内容包含多个文件名称与其对应的key和其他树对象的用引用,可以理解成操作系统中的文件夹,一个文件夹包含多个文件和其他文件夹:
    git常用指令(分支操作,仓库操作)
    git常用指令(分支操作,仓库操作)
  • git提交对象,一次提交即为当前版本的一个快照,该快照就是通过提交对象保存,其存储的内容为:
    一个顶级对象
    上一次提交的对象哈希
    提交者用户名及邮箱,提交时间戳,提交评论:
    git常用指令(分支操作,仓库操作)
  • 根据顶级对象,查找文件
    git常用指令(分支操作,仓库操作)
  • 根据中间的地址我们查找MEADME.MF里面的内容:
    git常用指令(分支操作,仓库操作)
  • 修改一个文件到提交的过程总共生成了三个对象:
    一个内容对象–》存储了文件内容
    一个树对象–》存储了文件名及内容对象的key
    一个提交对象—》存储了树对象的key及提交评论
    git常用指令(分支操作,仓库操作)
  • commit对象:
    git常用指令(分支操作,仓库操作)
  • 顶级树对象:
    git常用指令(分支操作,仓库操作)
    顶级对象包含的key
  • git cat-file +符号连接

https://git-scm.com/docs/git-cat-file

相关文章:

  • 2021-11-19
  • 2021-11-19
  • 2021-04-22
  • 2021-07-17
  • 2021-12-10
猜你喜欢
  • 2018-05-02
  • 2021-11-24
  • 2021-06-05
  • 2021-12-03
  • 2020-10-24
  • 2021-11-21
  • 2021-09-07
  • 2021-11-29
相关资源
相似解决方案