常用git命令

绘制不同branch之间的关系图

git log --oneline --graph --decorate --all

重组中间的commit信息

git rebase -i commit-id(需要修改的前一次)

合并另一个分支中的某个文件或文件夹(将B中的内容合并到A中)

// 首先切换到分支A
git checkout A
// 合并
git checkout B public/** view/index.html

暂时保存工作区和暂存区的内容

git stash [save “XXXX”]
全部恢复到工作区: git stash pop
分别按原来的位置恢复到工作区和暂存区:git stash pop --index

取消对某文件的跟踪

git rm --cached file_name

从过去某个提交拉出新的分支

git checkout commitid -b branchName

删除远程仓库地址

git remote rm origin

匹配远程仓库地址

git remote add origin https://github.com/XXX.git

修改前一次提交

git commit --amend

回到过去某个commit-id

git checkout commit-id

commit后撤销提交

git reset [–soft/–hard/–mixed] HEAD^
HEAD^表示撤回回上一次提交
–soft表示不删除工作空间改动代码,撤销commit,不撤销git add .
–hard表示删除工作空间改动代码,撤销commit,撤销git add .
–mixed表示不删除工作空间改动代码,撤销commit,并且撤销git add . 操作

查看branch

git branch 查看本地分支
git branch -r 查看远程分支
git branch -a 查看本地和远程全部分支

在本地使用远程的某一分支

更新:git fetch
第一次使用远程分支:git checkout 远程分支名

查看两个commit之间修改的文件名

git diff --name-status commitID_1 commitID_2

git diff commitID_1 commitID_2 --stat --name-only

HEAD与master分支游离(detached)解决方法:

1、在HEAD创建一个branch:git branch temp HEAD的commitID
2、切换到master分支:git checkout master
3、在master上将其与branch合并:git merge temp
4、删除temp分支:git branch -d temp

放弃某一文件的修改

在没有git add .前
git checkout 文件名
git checkout . # 放弃所有文件的所有修改
在git add .后,则使用git reset HEAD

更新上一次commit,且不改变commit info

git commit --amend --no-edit
如果合并时需要修改,则不添加–no-edit,可以重新编写commit信息

在不切换分支的情况查看其它提交的某一文件

git show commitID(或分支名):filepath

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值