git常用操作总结
2011-10-09 15:41
357 查看
git常用操作:
git config --global user.name "rh09jhl"
克隆一个项目到本地:
git clone git://your-git-server/your-project.git your-project
设置远程仓库 #添加(origin为一个标识,可以随意更换)
git remote add origin git://your-git-server /your-project.git
#删除
git remote remove origin
操作远程仓库
#提交本地修改(将本地的修改提交到远程的master分支)
git push origin master
#合并远程修改(将远程的master分支合并起来)
git pull origin master
#删除远程仓库的分支
git push: branch
#提交修改
git add /path/to/file
git commit -m reason
#提交全部修改
git commit
如果没有执行过时,先执行下面6条:
git config --global alias.st status
git config --global alias.ci "commit -a"
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.dc dcommit
git config --global alias.rb rebase
彩色交互界面?
git config --global color.branch auto
git config --global color.diff auto
git config --global color.interactive auto
git config --global color.status auto
git config --global core.autocrlf input
克隆一个项目到本地?
git clone git://your-git-server/your-project.git your-project
设置远程仓库?
# 添加(origin 为一个标示,可以随意更换)
git remote add origin git://your-git-server/your-project.git
# 删除
git remote remove origin
操作远程仓库?
# 提交本地修改(将本地修改提交到远程的master分支)
git push origin master
# 合并远程修改(将远程的master分支合并进来)
git pull origin master
# 删除远程仓库里的分枝
git push :branch
基本操作?
# 提交修改#//如果无法提交,会显示error 文件名跟路径,这时需要先把该文件先添加(git add /文件名/路径)后才可能提交
git add /path/to/file
git commit -m reason
# 提交全部修改
git commit -a -m reason
# 创建本地分枝 例如:创建分支2011
git co -b branch_name
git flow feature start 2011
# 查看分枝 例如:查看分支是哪个?查看分支的状态
git branch
git br
# 查看状态 例如:查看分支的状态?
git status
git st
# 删除分枝 例如:提交分支2011,并删除该分支
git branch -D branch_name
git flow feature finish 2011
# 查看分支之间的差异
git diff master branch
# 查看最新版本和上一个版本的差异(一个^表示向前推进一个版本)
git diff HEAD HEAD^
# 合并分支
git pull . branch
# 销毁自己的修改 (先提交到本地git commit -a然后在进行撤销,否则全部流失)
git reset --hard
#更新到最新情况
git pull
#提交到服务器
git push
#线上紧急 hotfix 在master上建立分支 例如:建立线上紧急分支2097 和提交2097 分支
git flow hotfix start 2097
git flow hotfix finish 2097
还可以和svn交互?
# 从subversion仓库中克隆
git svn clone https://googlecode.com/svn
# 将本地修改提交到subversion仓库
git svn dcommit
# 导入新的subversion更新
git svn rebase
协同工作流程?
1. 在本地修改确认后,需要提交到主库,使用
git push
如果远程提交失败,失败信息如:
To git@www.google.com:google.git
! [rejected] master -> master (non-fast forward)
error: failed to push some refs to
'git@www.google.com:google.git
'这时提示你主库下可能有文件冲突,
2. 这时需要执行
git pull
把主库最新版本同步到本地,如果提示如:
remote: Counting objects: 5, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
From git@www.google.com:google.git
0c94dbe..52a81fe master -> origin/master
Auto-merged readme
CONFLICT (content): Merge conflict in readme
Automatic merge failed; fix conflicts and then commit the result.
这是提示你有文件readme和主库有冲突,以后就需要手动处理冲突。
3. 文件中冲突,git以如下方式提示给你
<<<<<<< HEAD:readme
test by wangbai and yancan and someone haha
=======
test by wangbai and yancan and somthing
>>>>>>> 52a81fe3acf426bbae164a00ba3413550e056672:readme
4. 手动解决冲突后,需要重新commit,然后push
git commit
git push
如显示:
Counting objects: 10, done.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (6/6), 639 bytes, done.
Total 6 (delta 0), reused 2 (delta 0)
To git@www.google.com:google.git
52a81fe..bb31966 master -> master
提交成功
----------------
$ sudo cp/home/renhui/.ssh/id_rsa .
shurumima
$ ls
$ sudo cp /home/renhui/ .ssh/id_rsa.pub renhui.pub
$ ls
$ rm id_rsa
$ ls
$ ls id_rsa
$ ls
$ ls -al
$ ls
$ cd ..
$ sudo cp /home/renhui/ .ssh/id_rsa .
$ git st
$ ls
$ cd frontend/
$ ls
相关命令:
cp config.inc.php.dist config.inc.php 把配置文件改为后者
#打开文件 查看或进行修改
vim index.php
#按 insert 键后进入修改insert模式,方可以进行修改
#按esc键 进入推出esc模式,按wq保存退出 !q强制退出
相关sql:
set names uft8;
use uc_test;
ALTER TABLE 'USER' ADD email' VARCHAR(60) DEFAULT NULL AFTER 'other_address';
开发环境执行该sql
mysql -uroot uc_test < /home/rh09jhl/git/backend/docs/database/uc_test-20111010-rh09jhl.sql