常用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 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.27pm2 list查看当前运行的服务进程切换到项目目录cd git github/inspection-analysis-interfacepm2 logs serverexit 退出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 }