Git常用命令
初始化本地库:
git init
克隆远程dev到本地(dev分支):
$ git clone git@git.i-counting.cn:ERP/erp-backend.git dev
创建本地分支:
git checkout -b lijinping origin/dev 从远程dev拉取dev 并创建lijinping 分支
添加文件(或修改) :
git add .
签入代码:
git commit -m "[feat] 提交任务单到外勤 related to issue #1"
推送到自己的远程分支
git push origin lijinping
删除本地分支:
git branch -D lijinping
撤销本地分支的n次commit提交:
git reset HEAD~n
修改当前commit信息:
git commit -m "[feat] 客服客户查询需求 related to issue #2" --amend
解决冲突:
git pull upstream dev --rebase (在通过fork建立自己仓库情况下使用)
git pull origin dev --rebase (直接从远程源仓库拉取
将本地分支lijp推送到远程分支lijinping:
git push origin lijp:lijinping
强制推送命令:git push -u origin lijinping -f
切换分支:
git checkout dev
合并分支(将dev分支合并到当前分支):
git merge dev
查看本地所有分支:
git branch
允许不相关的文件合并:
git merge origin/dev --allow-unrelated-histories
暂存修改工作区:
git stash
拉取远端文件:
git pull
将工作区还原:
git stash pop stash@{0}
注:如果还原工作区的文件与pull 下来的文件有冲突,要手动修改冲突
中止rebase:
git rebase --abort
合并多个commit
1.git merge-base origin/dev lijinping
(# display your hashcode) 如:7bb2bcdd1dc6a36b1804f6d2cc8a4af0fc7f8463
2.git reset --soft `your hashcode` 如:
git reset --soft 7bb2bcdd1dc6a36b1804f6d2cc8a4af0fc7f8463
3.git add -A
4. git commit -m "commit" 如:
git commit -m "[fix] #lijinping modify"
5.git push -f
6.git log 查看有几个commit:
7.git push -set-upstream origin 推送到上游仓库
8.合并多个commit
(1)git rebase -i HEAD~n
(2)使用vm命令:
a. 按下 i 键 编辑
b.将第一条以外的commit信息开头的的pack 替换为 f
c.按esc键
d.输入:冒号+wq 如::wq
e.输入:git log 查看是否合并
f.如果已经合并成功,则推送代码即可
9.Git commit –-amend 修改上一次 commit message
# git commit --amend -m "new message"
10.回滚到指定的版本:
git reset --hard e377f60e28c8b84158
git add 添加多余文件
这样的错误是由于, 有的时候 可能
git add . (空格+ 点) 表示当前目录所有文件,不小心就会提交其他文件
git add 如果添加了错误的文件的话
撤销操作
git status 先看一下add 中的文件
git reset HEAD 如果后面什么都不跟的话 就是上一次add 里面的全部撤销了
git reset HEAD XXX/XXX/XXX.java 就是对某个文件进行撤销了
完整格式是:
$ git pull <远程库名> <远程分支名>:<本地分支名>
比如,取回远程库中的online分支,与本地的online分支进行merge,要写成:
git pull origin online:online
从指定远程分支拉取并合并代码:
git pull origin svt-new --rebase
从当前分支新建一个分支
git branch <new-branch-name> 03ea575
如:git branch lijinping 03ea575。03ea575为最后一次代码签入id
语法检查命令:./gradlew clean build