http://help.github.com/create-a-repo/
http://apps.hi.baidu.com/share/detail/31697631
http://1.liupengv5.sinaapp.com/archives/74
http://www.36ria.com/4742
http://note.sdo.com/u/lidashuang/n/rPdcQ~jCFhvFnM0iE000vi

http://www.worldhello.net/gotgithub/

 

 

svn和git公用ssh,两者可能会冲突
git=>F:\Install\Git\bin\ssh.exe
svn=>C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe;
ssh环境变量:declare GIT_SSH="F:\Install\Git\bin\ssh.exe";
本地文件夹添加git管理属性
git init
git add .
git commit -m "说明"

echo $GIT_SSH
ssh -v git@github.com检查是否公钥配置正常
产生公钥,到对应repo...仓库,Admin->deploy keys添加对应key
ssh-keygen -t rsa -C "tho..@gmail.com" (lckeyant--wu...2)

git remote add origin git@github.com:thomas1986/suggest.git

git remote -v  获取remote信息

git push origin master
git pull origin master

origin为以后获取数据使用的分支名称?

多库提交
http://note.sdo.com/u/lidashuang/n/rPdcQ~jGhzLFnM0gg0049E

ssh-agent bash
  ssh-add ~/.ssh/id_rsa_second

# second user(second@mail.com)
# git remote add origin git@github.com:thomas1986/suggest.git
# git remote add test git@github-second:second/test.git
# 并非原来的git@github.com:second/test.git
Host github.com
HostName github.com
#User git
IdentityFile "C:/Documents and Settings/thomas/.ssh/id_rsa_lckeyant"

----------------
git remote add origin_lckey1 git@github-lckeyant:thomas1986/lckeyant.git
git pull origin_lckey1 master  先要Pull然后再push
git push origin_lckey1 master
每次都要输入一次提交密码,是否是需要保存下本地私钥

每次别处的修改都是一个新的分支,需要新的origin_lckey...remote 来pull  , push
使用无bom格式保存config文件


--- 20130419
git add  添加新文件、刚修改过的文件,git跟踪的是内容不是文件

git branch  查看分支,*当前分支,gb

git branch ENG-8390 创建分支,gb ENG-8390

git checkout benchmark 切换到benchmark分支,简:gco benchmark

git clone http://...    拷贝一个项目

git commit -m 'summary' 提交并注视,   提交到本地,push才是提交到服务端

git config --get remote.orgin.url  查看本地配置的远程仓库地址

git diff  比较项目中任意两个版本的差异,或别人提交的新分支。没有staged(添加到索引中),在下次提交中不会被提交的修改。

git diff test 当前目录与另一个分支test的差别

...

git log  显示所有的提交

git merge ENG-8390  把ENG-8390分支的修改merge到当前分支,没有staged(添加到索引中)的修改。

git reset --hard HEAD 撤销当前合并

git status 获取当前项目状况

git mv

git pull

git push

git rebase

git remote

git stash  将当前分支的修改挪到stash,

git stash pop 将之前一个分支stash修改,merge到当前分支

git branch --help  查看帮助

git branch -d ENG-8390  删除本地分支ENG-8390

gba查看服务端状态 

 

2013.11.13
-----------------------------------------

git log
git branch
git tag

git log
git format-patch origin //patch
git format-patch HEAD^1 //最近的一次commit的patch
sendpatch 0001-lcweb-admin-common-user-lock-or-unlock-show-button.patch //by zhiming
scp -r 0001-lcweb-admin-common-user-lock-or-unlock-show-button.patch 10.33.2.40:/root/

git reset HEAD^1 //回退到之前版本

git format-patch HEAD^^ //最近的2次commit的patch

git pull origin
git push origin dev1:master //checkin
git checkout dev
git rebase master

git cherry-pick 19386b8ec96e2eb98ce33c9f0bd32fc482d5964e
git push origin branch_1_2:B_LC_RELEASE_1_2 => :之间没有空格,有空格,则先删除分支后创建新分支

http://www.cnblogs.com/elfsundae/archive/2011/07/17/2099698.html
git branch -d dev //删除分支

git merge master //将master merge到当前所在分支
git log --amend //修改最后一次commit的信息
git log --stat 所有log修改的文件名
git log -p -2 最近2次修改
//远程分支
git push origin name_of_branch:name_of_branch //推修改内容到分支
git push origin :branch_name //(远程名 :分支名) 删除远程分支


git log -p file.txt
git log -p "comit md5 号码" 查看某个commit的修改
//恢复本地删除文件
git checkout path_to_file
git checkout commit_id -- path_to_file //恢复文件到版本号

http://www.cnblogs.com/cspku/articles/Git_cmds.html 常用git命令
8fda37910dbfd0b3f6e2b64f5bb3c31109feb928
7bea0354250ee9534c9022db221e699d4d0ec086
32f147263497f449b4581426cf3ac726de31927a
//保存分支的修改到stash隐藏
http://blog.csdn.net/xuzhezhaozhao/article/details/8888142 clear后恢复
git add .
git stash
git stash list //查看列表
git stash apply stash@{0} //把修改拿回
git stash clear //清空列表
http://blog.chinaunix.net/uid-20401941-id-3343826.html
http://hi.baidu.com/lei_tigertw/item/073ab595ace6f2ff7b7f017c
http://www.open-open.com/lib/view/open1328069889514.html
http://www.ruanyifeng.com/blog/2012/07/git.html


/*****
对于历史提交呢,就必须使用rebase了。
git rebase -i HEAD~3
表示要修改当前版本的倒数第三次状态。
这个命令出来之后,会出来三行东东:
pick:*******
pick:*******
pick:*******
如果你要修改哪个,就把那行的pick改成edit,然后退出。

这时通过git log你可以发现,git的最后一次提交已经变成你选的那个了,这时再使用:
git commit --amend
来对commit进行修改。
修改完了之后,要回来对不对?
使用git rebase --continue
OK,搞定。
*****/


为了避免每次都输入密码,可以将密码托管给ssh-agent,这样本次登陆就只需要输入一次密码:
shell>eval `ssh-agent` 注意是 `不是引号
shell>ssh-add
输入密码

退出ssh-agent:
shell>eval `ssh-agent -k`


git checkout -- a.php 取消之前文件的修改
git checkout a.php 下载老的a.php
git am xxx.patch 本地修改到patch
git branch -m banch_1_2_cn branch_1_2_cn 本地分支重命名

git diff branch_1 branch_2 比较2个分支的不同
git diff branch_1:a.txt branch_2:a.txt 比较2个分支某文件
git branch -vv 查看本地分支与远程分支的对应关系
git config --list 查看配置
git checkout -b branch_1_2_cn_certus origin/B_LC_RELEASE_1_2_CN_CERTUS 基于远程分支创建本地分支
git checkout --track origin/2.0.1.20120806
git checkout --track 新分支名 origin/远程分支名 =>基于远程分支创建本地分支
git show "commit log 编号" 查看某次commit的修改
git diff "commit 编号1" "commit 编号2"" 比较2次提交
git log a.css 查看a.css的提交记录
git format-patch commit_id 从commit_id后开始依次生成patch 到最新
git remote -v 显示远程仓库信息
git pull origin B_LC_DEV_2_0:dev2.0 更新2.0分支
git reset HEAD^ a.py 回退到该文件上一个版本
git reset --hard commit_id 本地仓库回退到某个版本
git blame 查看某行的修改历史
git config --global commit.template ~/commit.template 设置git commit 的默认提交模板

 

 

 

 

 

 

posted on 2012-05-06 16:53  LcKey  阅读(480)  评论(0编辑  收藏  举报