实际工作中常用git命令
一次完整的提交
初始化,本地新建的项目,关联到远程
git init
git remote add origin xxx.git
clone
git clone xxx.git
拉取代码,commit 之前先 pull 一下,避免出现无意义的 merge
git pull
将改动代码加到暂存区
git add .
将暂存区里的改动给提交到本地的版本库,并带有注释
git commit -m 'commit注释'
将本地版本库的分支推送到远程服务器上对应的分支
git push
分支管理
切换到目标分支
git checkout origin/fix/search
基于当前分支新建分支
git checkout -b fix/search
关联origin
git push --set-upstream origin feat/mall-total
分支合并(git merge)
你需要另一个分支的所有代码变动,那么就采用合并
切换到目标分支
git checkout sit
拉取最新代码
git pull
合并分支
git merge origin/fix/search
解决冲突
编辑器解决
推送
git push
合并某次提交
你只需要部分代码变动(某几个提交),这时可以采用 Cherry pick
参考:http://www.ruanyifeng.com/blo...
commitHash:
将某一次提交的内容合并过来
git cherry-pick -n commitHash
多次提交一起合并
git cherry-pick -n commitHashA commitHashB
-n (--no-commit) : 只更新工作区和暂存区,不产生新的提交。
回滚
回滚到commitHash,讲commitHash之后提交的commit都去除
git reset --hard commitHash
将最近3次的提交回滚
git reset --hard HEAD~3
回到上一個 commit 不清除修改的內容
git reset HEAD^
回到上一個 commit,並且強制清除修改的內容
git reset HEAD^ --hard
将目前自己本机的代码库推送到远端,并覆盖,慎用
git push -f
撤销某一次中间提交
git revert commit_id
//如果commit_id是merge节点的话,-m是指定具体哪个提交点
git revert commit_id -m 1
//接着就是解决冲突
git add -A
git commit -m ".."
git revert commit_id -m 2
//接着就是解决冲突
git add -A
git commit -m ".."
git push
git 别名设置
git config --global alias.st status
git config --global alias.ci commit
git config --global alias.ch checkout
使用如下:
git st
git ci -m '提交'
git ch branch-name
其余骚操作
# 按提交时间排序所有分支
git branch --sort=-committerdate
# 切换到上一个分支
git checkout -
git checkout @{-N} #前N个分支
# 查看哪些文件处于什么状态
git status
# 列出 commit ID, commit message and remote
git branch -vv
# -sb git status的缩减版
git status -sb
常用命令行操作 (Mac)
打开 vscode 项目
code .
保存并退出
shift zz
列出当前文件下的文件
ls
ls -a 查看隐藏
显示隐藏文件夹
命令 commond shift .
创建目录
命令:mkdir xxx
进入目录
命令:cd
比如要进入xxx目录则就是cd xxx
返回上一级目录
命令:cd..
删除目录(空目录)
命令:rmdir
注意:此删除不会出现在废纸篓里
删除目录(非空或者空目录都可以删除)推荐使用
命令: rm -rf
案例:rm -rf test(rm -rf命令后面空格在加上目录名)
注意:此删除不会出现在废纸篓里
创建文件
命令:touch
示例(创建一个test为名的txt文件):touch index.html
删除文件
命令:rm
案例(删除一个test.txt文件):rm test.txt
注意:此删除不会出现在废纸篓里
拷贝
命令:cp
案例(拷贝一个test.txt文件并重新命名为test2.txt):cp test.txt test2.txt
查找
命令:find
案例(查找当前目录下所有的txt文件):find *.txt
显示当前的目录
命令:pwd
打开成可视化的文件夹
命令:open
说明:如果是open .则是打开当前命令里的目录,如果要打开指定的文件夹或者文件则格式为open 要打开的路径即可。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。