【Git使用技巧】
1.把一个已经存在于版本库中的文件加入忽略提交文件(.gitignore)中,需要如下代码:
git rm --cached [文件路径]
例如: git rm --cached app/App/Common/Library/MCD.class.php
2.使用 git s 代替 git status 的方法:
git config --global alias.s status
3.要将代码回滚到之前的某个版本,类似于SVN的svn up....
git reset --hard a98a11 ,其中 a98a11 表示要回滚到的版本号,可以从版本库中获取
4. 在.gitignore 中加入了某个目录,但是 git s 还是能看到这个目录的原因
这个目录肯定之前被追踪过,需要使用如下命令:
git rm --cached -r app/FIS (app/FIS 是要操作的目录)
5. 屏蔽一大堆 mode change 的方法:
mode change 100644 => 100755 thinkphp/ThinkPHP/Library/Vendor/phpRPC/xxtea.php
git config --global core.filemode false
6. git 删除某个分支:git branch -D staging //删除本地staging分支
适用场景:有时候提交(push)到某个分支的时候出错解决不了,就使用上面的方法,然后再fetch、checkout即可。
命令:git branch -D staging、git fetch、git checkout staging、git pull origin staging、git merge renxing、git push origin renxing
【Linux下搭建git环境完整版】
1.安装git
apt-get install git
2.查看状态
git status 或者 git s
3.提交代码
git commit [指定文件] [-a] -m '说明注释'
4.设置要屏蔽的不提交的文件或目录
git根目录下,vim .gitignore ,在最底下直接编辑,例如:
5..查看当前分支:
git branch
6.切换分支
git checkout master
7.将master分支上的代码拉下来(当前在master分支):
git pull origin master
8.将本地刚才修改的内容合并到master(当前在master分支):
git merge renxing
7.将最新的代码提交到master(当前在master分支):
git push origin master
【windows下搭建git环境完整版】
数据整理于:2015年8月26日
1. 首先进入 https://svngit.qwbcg.com:8443/summary/qgzs_apiv2.git ,输入账号和密码登录。
2. 接下来,在指定目录下,鼠标右键 Git Bash,然后再弹出的命令行下输入: ssh-keygen
遇到输入符,直接回车即可。
然后按照提示,在对应的文件夹下找到对应的文件,复制里面的内容:
在刚才登录的页面的右上角,点击用户名--用户中心--SSH Keys,然后输入刚才复制的信息。
3. 定义用户信息
git config --global user.name “renxing”
git config --global user.email “renxing@qq.com”
4. 克隆项目到本地
git clone ssh:renxing@svngit.qq.com:29418/test.git
之后输入 yes,等待片刻即可。
5. 后续一些基本操作
在本地磁盘目录 .git同级目录下,右键 Git Bash,然后输入 git log,可以查看已存储到服务器端的日志。
★ checkout renxing 分支
git checkout renxing
git branch
git fetch
git pull origin renxing
★ checkout staging分支
git checkout staging
git pull origin staging
★ 最后,回到renxing 分支,查看 git branch
【发布代码所需的shell.sh】
【all_commit.sh】
#!/bin/sh
git checkout renxing
echo "Please Enter mark:"
read mark
git commit -a -m ${mark}
##发布到线上 renxing
git pull origin renxing
git push origin renxing
##发布到线上 staging
git checkout staging
git pull origin staging
git merge renxing
git push origin staging
##发布到线上 master
git checkout master
git pull origin master
git merge renxing
git push origin master
##回到 renxing
git checkout renxing
---------------------------------