04月20, 2020

git命令行

暂存文件

git add .
git add *.txt
git add ./a/
git add ./a/*.txt

取消暂存文件 与 git add为互反操作

git reset HEAD 2.txt
git reset HEAD ./a
git reset HEAD ./a/*.txt

暂存文件之前取消修改

git restore 2.txt
git restore ./a
git restore ./a/*.txt

提交到本地仓库

git commit -m '注释'

推送到远程仓库

git push

获取远程更新

git fetch

获取远程更新代码

git pull

查看本地仓库变动的文件

git status

查看本地仓库对应的地址

git remote -v

修改本地仓库对应的远程地址

git remote set-url origin http://new.git

代码冲突 git push推送失败,则先git pull更新

情况1:无冲突
情况2:有冲突,git自动解决冲突
情况3:有冲突,git不能解决,需要手动解决 如果想还原到合并之前的状态用git merge --abort
 解决1:打开冲突文件,手动编辑
 解决2:误修改别人的文件,需要用别人最新的或者我们的版本替换
   git checkout --theirs a/2.txt 或者 git checkout --ours a/2.txt
   git add a/2.txt
   git commit -m 'use theirs version'
   git push

git reset

假如提交版本为
1030分版本 commitId_ccc
1020分版本 commitId_bbb
1010分版本 commitId_aaa
1、放弃ccc版本提交
git reset commitId_bbb --hard (--hard会丢弃bbb版本之后的文件修改)
2、重新回到新版本commitId_ccc
git reset commitId_ccc --hard
如果不知道commitId_bbb之后的版本号是多少 使用git reflog查看

git revert

版本逆操作
git revert 版本号
假如当前版本把某文件第一行的内容由1111修改为2222
那么git revert当前版本 则把2222改为1111并产生新的版本号 

git rebase

修正版本树
git rebase

检出指定版本的文件

git checkout fa09990 src/controller/test10.ts

本文链接:https://blog.hijs.cc/post/git.html

-- EOF --

Comments