git常用命令

问题1:fatal: refusing to merge unrelated histories

解决方案:在操作命令后面加--alcalow-unrelated-histories

问题2:本地没有远程新增加的分支信息

git fetch origin (拉取远程分支信息)

问题3:删除远程分支存在的文件

git rm -r -n --cached <文件路径>(预览将要删除的文件)

git rm -r  --cached <文件路径>(确定无误后删除文件)

git commit -m "提交说明"
git push
问题4:@@ -2,5 +2,6 @@的含义:
终端所展示的文本,在新旧文件中所处的行数;-表示旧文件(版本库);+表示新文件(工作区)。
-2,5:终端所展示的文本,在旧文件中,所处于第2~5行
+2,6:终端所展示的文本,在新文件中,所处于第2~6行

常用命令

git init 将当前目录变成git管理目录

ls -ah 查看隐藏目录文件

git add <file> 添加文件到仓库

git commit -m <message> 提交文件到仓库

git status 当前仓库状态

git diff <file> 查看文件修改地方

git log 查看提交日志

git log --pretty=oneline 查看简易提价日志

git reset --hard HEAD^ 回退一个版本(注意:工作区和暂存区的修改都会被删除)

git reset --hard HEAD^^ 回退两个版本

git reset --hard HEAD~100 回退100个版本

git reset --hard 1094a 回退到指定版本

git reflog 查看记录的每一次命令

git add 把文件添加到暂存区(stage),git commit 把文件提交到分支。创建版本库时,git自动为我们创建了唯一一个master分支,所以git commit 直接把文件提交到master分支。

git diff HEAD -- <file> 查看工作区和版本库里最新版本区别

git checkout -- <file> (或者git restore <file文件名称>) 回退到最近一次git commit或git add时的状态

git reset HEAD <file> 回退暂存区(stage)到工作区

git checkout HEAD <file> 回退到最近一次git commit

rm <file> 删除本地文件

git rm <file> 添加要删除的文件

git commit -m "remove file" 提交要删除的文体

远程仓库

git remote add origin git@github.com:lt/learngit.git 添加远程仓库,origin 是url的别名

git push -u origin master 推送本地提交到远程

git remote -v 查看远程库

git remote rm origin 删除远程库

git config pull.ff false 设置默认策略

git pull 先尝试快进合并,如果不行再进行正常合并生成一个新的提交

git clone git@github.com:lt/learngit.git 从远程克隆仓库

git push origin dev 推送origin的dev到远程仓库

分支管理

git checkout -b dev 创建dev分支,并切换到dev分支

git checkout -b dev origin/dev 创建远程origin的dev分支到本地

git pull <remote仓库地址别名> <remote仓库中某个branch名称> 拉取远程remote的branch分支

git branch --set-upstream-to=origin/dev dev 指定本地dev分支tracking远程origin/dev分支

相当 git branch dev ,git checkout dev 两条命令

git branch 查看当前分支

git checkout master 切换回master分支

git merge dev 合并dev分支到master分支

git branch -d dev 删除dev分支

git branch -D dev 强行删除dev分支

git switch -c dev 创建并切换到dev分支

git switch master 切换到master分支

git merge --no-ff -m "merge with no-ff" dev 禁用Fast forward模式,在merge时生成一个新的commit

git stash 储藏工作区的修改

git stash list 查看储藏list

git stash apply 恢复修改到工作区

git stash drop 删除stash记录

git stash apply stash@{0} 恢复到指定的stash

在master上修复bug的提交记录,复制到dev分支

git checkout dev

git cherry-pick <commit记录的id>

git rebase 把分叉的提交变成一条直线

git tag <name> 创建一个tag

git tag 查看所有tag

git tag <name> <commit id> 指定提交记录创建tag

git tag -a <name> -m "说明文字" <commit id> 用-a指定标签名,-m指定说明文字

git show <tagname> 查看指定tag名称的提交记录

git tag -d <name> 删除标签

git push origin <tagname> 推送某个标签到远程

git push origin --tags 一次性推送所有尚未推送到远程的本地标签

git push origin :refs/tags/<tagname> 删除指定远程标签

git config --global color.ui true 配置全局配置

git config --global alias.st status 给git status添加别名 git st

.gitigonre

git add -f App.class -f强制添加App.class到git

git check-ignore -v App.class 检查忽略文件对App.class规则

# 排除所有.开头的隐藏文件:

.*

# 排除所有.class文件:

*.class

# 不排除.gitignore和App.class:

!.gitignore

!App.class

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值