linux
1 | https://www.itcodemonkey.com/article/12558.html |
回到远程仓库的状态
1 | git fetch --all && git reset --hard origin/master |
重设第一个commit
1 | git update-ref -d HEAD |
删除已经合并到master的分支
1 | git branch --merged master | grep -v '^\*\| master' | xargs -n 1 git branch -d |
展示本地分支关联远程仓库的情况
1 | git branch -vv |
关联远程分支
1 | git branch -u origin/mybranch |
列出所有远程分支
1 | git branch -r |
列出本地和远程分支
1 | git branch -a |
从远程分支中创建并切换到本地分支
1 | git checkout -b <branch-name> origin/<branch-name> |
删除远程分支
1 | git push origin --delete <remote-branchname> |
重命名本地分支
1 | git branch -m <new-branch-name> |
切回到某个标签
1 | git checkout -b branch_name tag_name |
放弃工作区的修改
1 | git checkout <file-name> |
修改远程仓库的url
1 | git remote set-url origin <URL> |
查看两个星期内的改动
1 | git whatchanged --since='2 weeks ago' |
展示简化的commit历史
1 | git log --pretty=oneline --graph --decorate --all |
展示任意分支某一文件的内容
1 | git show <branch-name>:<file-name> |
clone下来指定的单一分支
1 | git clone -b <branch-name> --single-branch https://github.com/user/repo.git |
忽略某个文件的改动
1 | 关闭 track 指定文件的改动,也就是 Git 将不会在记录这个文件的改动 |
在commit log中查找相关内容
1 | git log --all --grep='<given-text>' |
搭建Git服务器
1 | https://coffeephp.com/articles/3 |
查看定时任务日志
1 |
|
GitHub API limit
1 | GitHub API limit (0 calls/hr) is exhausted, could not fetch https://api.github.com/graphql. Create a GitHub OAuth token to go over the API rate limit. You can also wait until 2019-01-25 09:36:32 for the rate limit to reset. |
在Git中添加忽略文件
如果文件已经添加到缓存区了
// 移除file1
git reset HEAD file1
// 移除全部https://blog.tedxiong.com/add_ingore_file_for_git.html
git reset HEAD *
//如果有多个文件可以使用通配符
git rm –cached FILENAME
添加忽略文件
touch .gitignore
echo ‘file1’ >> .gitignore
echo ‘build/‘ >> .gitignore
配置全局的忽略文件
git config –global core.excludesfile ~/.gitignore_global
添加例外
如果不想跟别人分享.gitignore文件,可以在.git/info/exclude中配置规则。
一键提交脚本
1 | vi push.sh |
免密登录
1 | ssh-keygen -t rsa |
最近24小时修改过的文件
find / -mtime -1
修改 hostname
hostname syyong # 临时修改 hostname 为 syyong
vi /etc/sysconfig/network –> HOSTNAME = syyong # 永久修改 hostname 为syyong
查找文件
1 | find /etc/ -name httpd.conf # 在 /etc 目录下查找文件名为 httpd.conf |
ssh
1 | ssh -p 22 syyong@192.168.1.2 # 通过 ssh 通过账号密码登录到 192.168.1.2 服务器 |
scp
1 | scp -p 2202 /home/lnmp.tar.gz www@192.168.1.2:/home/ # 将文件 lnmp.tar.gz 同步到 192.168.1.2 服务器的 /home/ 目录下 |
netstat 命令查看连接数判断攻击
1 | 显示所有活动的网络连接。 |
Linux 相关信息
1 | lsb_release -a # 查看操作系统版本https://liam.page/2016/11/06/Linux-Info-Cheatsheet/ |
反向代理以访问 Gist
1 | server { |
文件名大小写有问题
1 | 方案一: |
paste 命令支持输入多个文件
1 | $ paste -d '|' paste2.txt paste1.txt paste3.txt |
Git webhook
1 | //http://blog.text.wiki/2017/10/31/git-webhooks-for-php.html |
删除某个文件的所有历史记录
1 | $ git filter-branch -f --tree-filter 'rm -rf common/service/SyncBlogServince.php' HEAD |
批量kill进程
1 | ps -ef|grep 'python' |grep -v grep| awk '{print $2}’ | xargs kill -9 |
nginx日志按日期切割并保留最近七天的日志
1 |
|
检测端口是否打开
1 | yum install -y nc |
Composer 设置忽略版本匹配
1 | vagrant@homestead:/usr/share/nginx/html/laravel-blog$ sudo composer install |
linux
1 | 统计 IP 连接数 |
深入 Nginx 之配置篇
1 | user admin; #配置用户或者组。 |
nginx日志中提取5分钟内访问状态非200的记录
1 | nginx部分访问日志如下: |
golang入门
1 | var b []int |
linux chmod
1 |
|
nginx 配置
1 | 禁止空主机头和未授权域名访问 |
svn搭建
1 | yum install -y subversion |
Git 钩子检查 PHP 语法和代码规范
1 |
|
带宽被打满
1 | apt-get install iftop |
你可能会忽略的 Git 提交规范
1 | <type>(<scope>): <subject> |
git pull或git checkout 后保持权限不变
1 | https://www.guaosi.com/2018/12/06/git-auto-change/ |
Git 仓库迁移至其他服务器并实现 hooks 自动化部署
1 | //https://learnku.com/articles/26130 |
更新与回滚
1 | $ cd /var/www/deployment |
切换账号执行脚本
1 | function install_composer { |
生成压缩包
1 | 对mster分支代码生成压缩包供使用者下载使用,--prefix 指定目录名 |
自动部署
1 | GitHub设置 WebHook |
CONFLICT (modify/delete)
1 | $ git merge wechat_login |
Already up-to-date
1 | 先切换到master分支,再执行git checkout master |
文件名大小写修改
1 | 先复制文件,再修改 |
ssh公私钥
1 | 第一步,在客户端生成公钥 |
Connection reset
1 |
|
Could not read from remote repository
1 | $ git clone git@xxx.com/app/api.git |
Git 优雅的撤销中间某次提交
1 | git revert 100047dcc -m 1 |
git原理
1 | 创建 blob 对象: |
Git 获取指定文件
1 | https://me.jinchuang.org/archives/145.html |
Git 实现 Laravel 项目的自动化部署
1 | # 创建一个名叫jouzeyu的用户 |
gitee 和 GitHub 的 webhook 的使用
1 | //访问秘钥 |
Forestry 管理基于 GitHub 的图床
1 | 免费提供静态博客管理功能,使你的博客拥有 CMS 般的体验。 |
删除git历史
1 | git checkout --orphan new |
Git笔记(三)——[cherry-pick, merge, rebase]
随机生成 Git commit git commit -m $(curl -s http://whatthecommit.com/index.txt)