常用git命令
连接github
配置
设置别名
.gitignore文件
添加文件到暂存区
代码上传
git add .
git commit -m "(这里面是英文注释)"
git push
创建新的分支
git branch test //本地创建一个新的分支
git push origin test // 把本地新的分支提交到远程分支上
git branch --set-upstream-to=origin/test test // 远程分支关联,关联后git push和git pull 就不需要指定远程分支了
如果只是想单独提交某个文件,可以用
git add + 绝对路径
查看仓库状态
查看文件修改的内容
移除文件
移动文件
git mv file_from file_to
查看历史提交
标签
分支
远程分支
远程仓库操作
git原理
解决冲突
正常情况下,遇到冲突直接通过是通过
git mergetool
解决冲突,然后通过git commit -m "merge"
把所做的修改部分给注释一下,然后通过git push
上传代码,最后再git pull更新一个最新的代码。
git stash
会把本地的代码给覆盖掉,可以用如下步骤找回:
* git fsck --lost-found
* git show 7a8921dd5bce56caa70fdba038f091ed61e5b701
可以查看第一个记录
如果是自己要找回的代码,通过下一步找回
* git merge 7a8921dd5bce56caa70fdba038f091ed61e5b701
,进行合并
* 运用mergetool工具解决冲突
git mergetool
* 再重新提交一次代码
* 到此代码基本上算是找回来了,哎,终于把写代码找回来了,也学会了一门手艺
查看服务器日志
- ssh + 服务器地址,如
ssh jk@139.219.191.27
- pm2 list查看当前运行的服务进程
- 切换到项目目录
cd git github/inspection-analysis-interface
- pm2 logs server
- exit 退出
- ll是ls -l 的一个别名,ll会列出该文件下的所有文件信息,包括隐藏的文件,而ls -l只列出显式文件, ls -t是以时间排序, -r对目录反向排序,-a列出目录下所有文件, -l列出文件的详细信息
测试环境的部署思路
- 当本地向github的test分支提交新的代码时,会通过git pull origin test 将test分支中除了node_modules文件夹外所有的代码复制到archive文件夹下面。
- 运用cnpm install 命令来安装模块到node_modules目录中。
- 将archive下面的node_modules指向github上面的node_modules。
- 删除原来的server进程。
- 重新将bin/server.js命名为server并重新启动。
将github上面的一个分支合并到别一个分支上面
以将development分支合并到test分支为例
*git checkout development
在本地切换到development分支
*git pull
更新development分支代码
*git checkout test
切换到test分支
*git merge development
将development分支代码合并到test分支上面
* 将test分支代码上传到github上面的test分支上面
{
git add .
git commit -m "merge development to test"
git push
}