Git 操作 看这里就行了

临时整理的,部分内容为补充,有的注释也没写,后面有空会补上

  • pwd 查看当前目录
  • whoami

  • git init //创建git本地仓库

  • touch 1.txt

  • touch 2.txt

  • git add .

  • git commit -m "fix bug"

  • git commit -am "fix bug" // add 并 commit

  • git rm 2.txt //删除

  • .gitignore // git提交忽略配置文件

关联远程仓库:

  • 添加远程仓库: git remote add origin
git remote add origin https://gitee.com/xxx/xxxxxx.git

可以添加多个远程仓库


  • git remote
  • git remote -v
  • git remote show origin
image.png

  • git push -u origin master

远程仓库 - 常见操作命令

  • 克隆仓库 git clone
git clone https://gitee.com/xxx/xxxxxx.git
  • 移除仓库 git remote rm
git remote rm origin 

注意: 此命令只是从本地移除远程仓库的记录,并不会真正的影响远程仓库

  • 抓取/拉取 仓库 git fetch master | git pull master

get pull: 是从从成仓库获取最新版本并merge到本地仓库

get fetch: 是从远程仓库获取最新版本到本地仓库,不会自动merge
     (其实已经以二进制文件形式存放在.git文件加下objects文件中)

注意:如果当前本地仓库不是从远程仓库克隆,而是本地创建的仓库,并且仓库中存在文件,此时再从远程仓库拉取文件的时候会报错(fatal:refusing to merge unrelated histories),解决此问题可以在 git pull 命令后加入参数 -allow-unrelated-histories


  1. 如果已关联远程仓库则可以直接:git fetchgit pull

  2. 如果未关联远程仓库则需指定仓库地址.

git fetch https://gitee.com/aliffter/gitRepoDemo.git
git pull origin master https://gitee.com/aliffter/gitRepoDemo.git
image.png
  1. git fetch 后,需进行 git merge 操作才能正常显示。
image.png
  • 合并 git mere
git merge origin/master

注意 git pull == git fetch + git merge


git分支

  • 查看分支
    • 查看本地分支: git branch
    • 查看远程分支: git branch -r
    • 查看所有分支: git branch -a
  • 创建分支
    • 创建本地分支: git branch
git branch test    //创建一个名字为test的本地分支
  • 切换分支
    • 切换分支: git checkout
git checkout test    //切换到test分支
image.png

注意:* test 前面的” * “号表示,当前所在的分支

  • 推送分支

首先要知道两个关键字:originmaster
origin 可以认为是默认的远程版本库名称
master 分支名称

  • 将分支推送到远程仓库:git push origin :
git push origin test

解释: - $git push A B:C

 其中A和C是分别remote端的一个repository的名字和branch的名字,
 B : 是本地端branch的名字
 git push A B:C意思是把本地分支B推送到远程仓库A的C分支。当B=C时可以直接省略为:git push A B。

注意:

通常 A 不可修改 ,默认为 origin ,所以平常我们写的git push origin master 就表示 把我们本地的master分支 推送到 远程仓库的master分支上

  • 合并分支
    • 合并分支 git merge
git merge test

设定当前在master 分支上,执行git merge test,表示,将test分支合并到master上

image.png
  • 合并冲突

  有时候合并操作不会如此顺利,如果在两个不同的分支中,对同一个文件的同一个部分进行了修改,Git就没办法合并他们,同时会提示文件冲突。此时需要我们打开冲突文件,并修复冲突内容,最后执行git add命令来标识冲突已解决

  • 删除分支
    • 删除本地分支 git branch -d
    • 删除远程分支 git push origin -d

如果要删除的分支中进行了一些改变,或者该分支还尚未合并,此时执行上面的删除命令并不会删除分支(即该分支与远程仓库中的对应分支存在差异),如果要强制删除此分支,则可以将命令中的-d 参数改为-D

Git标签

  1. 像其他版本控制一样,Git可以给历史中的某一个提交打上标签,以示其重要。
  2. 比较有代表性的是人们会使用这个功能来标记发布节点(v1.0、v2.0等)。标签指定的是某个分支某个特定时间点的状态。
  3. 通过标签,可以很方便的切换到标记的状态
  • 创建一个新标签:git tag
 git tag v1.0

 git tag v2.0
  • 列出已有的标签:git tag
 git tag
  • 查看某个标签的信息:git show
  git show v1.0
  • 将标签推送至远程仓库:git push
 git push origin v1.0
  • 检出标签(新建一个分支,指向某个标签) git checkout -b
/*
创建一个b1.0分支指向v1.0标签,同时切换到b1.0分支下
*/
git checkout -b b1.0 v1.0  
  • 删除标签
    • 删除本地tag :git tag -d
    • 删除远程tag:git push origin :refs/tags/
git tag -d v1.0

git push origin :refs/tags/v1.0

你可能感兴趣的:(Git 操作 看这里就行了)