git init
git add
git commit -m
git status
git diff
git log
git reset
git reflog
git checkout
git rm
git push
git clone
查看远程库的信息,用git remote
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
合并分支时,加上--no-ff参数就可以用普通模式合并
删除分支:git branch -d <name>
强行删除:git branch -D <name>
git log --graph命令可以看到分支合并图。
推送分支 git push origin <branch name>
须创建远程origin的dev分支到本地 git checkout -b dev origin/dev
ssh-keygen -t rsa -C "GitHub账号" 创建SSH Key
git remote add origin git@github.com:dytl/codes.git 关联一个远程库
git push -u origin master 推送master分支的所有内容
多人协作的工作模式通常是这样:
首先,可以试图用git push origin branch-name推送自己的修改;
如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;
如果合并有冲突,则解决冲突,并在本地提交;
没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!
如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,
用命令git branch --set-upstream branch-name origin/branch-name。
这就是多人协作的工作模式,一旦熟悉了,就非常简单。
git log --pretty=oneline --abbrev-commit 找到历史提交的commit id
命令git tag <name>用于新建一个标签,默认为HEAD,也可以指定一个commit id;
git tag -a <tagname> -m "blablabla..."可以指定标签信息;
git tag -s <tagname> -m "blablabla..."可以用PGP签名标签;
git tag可以查看所有标签。
git show <tagname>查看标签信息
命令git push origin <tagname>可以推送一个本地标签;
命令git push origin --tags可以推送全部未推送过的本地标签;
命令git tag -d <tagname>可以删除一个本地标签;
命令git push origin :refs/tags/<tagname>可以删除一个远程标签。
git config --global color.ui true Git显示颜色
要方便管理公钥,用Gitosis;
要像SVN那样变态地控制权限,用Gitolite。
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
ISSUE
error: could not lock config file .git/config: Permission denied
error: could not lock config file .git/config: Permission denied
Branch master set up to track remote branch master from origin.
error: unable to create directory for .git/refs/remotes/origin/master
error: Cannot lock the ref 'refs/remotes/origin/master'.
error: unable to create directory for .git/refs/remotes/origin/master
error: Cannot lock the ref 'refs/remotes/origin/master'.
上面问题解答
http://stackoverflow.com/questions/2642836/git-error-unable-to-append-to-git-logs-refs-remotes-origin-master-permission
sudo chgrp {tonglei} .git/logs/refs/remotes/origin/master
sudo chown {tongeli} .git/logs/refs/remotes/origin/master
git push
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
以上内容来自:
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000