用命令行创建一个新的git仓库:
echo "# sd" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin git@github.com:YankunLi/sd.git
git push -u origin master
用命令行push一个已经存在的git仓库:
git remote add origin git@github.com:YankunLi/sd.git
git push -u origin master
提交新的patch:
//在本地创建新分支
git branch new_branch
//切换到新分支
git checkout new_branch
//以上两步等同于git checkout -b new_branch
//coding......
//将修改的文件加到索引库中
git add <path> //or git add .
//提交修改到本地分支
git commit
//提交修改到远程主分支
git push origin master
放弃git add 操作之前的改动
git checkout <path_file>
撤销提交的索引库中的更新(在git add . 之后 git commit 之前)
git rm -r --cached .
撤销git commit的操作
git reset --hard <commit_id>
更新上一次提交,如在develop分支上,更新最近一次提交,即将改动合并到上一次提交中:
git checkout develop
//coding ......
git commit --amend
git pull的作用是获取远程库的分支,在合并到本地分支:
git pull <远程库> <远程分支>:<本地分支>
//如拉取远程库的develop分支到本地的master分支
git pull origin develop:master
//如果拉取的远程分支,与当前分支合并则
git pull origin develop
//上面的过程可以拆分成两步来做1.来取远程分支;2.合并到本地分支
git fetch origin
git merge origin/next
在某些场合,Git会自动在本地分支与远程分支之间,建立一种追踪关系(tracking)。比如,在git clone的时候,所有本地分支默认与远程主机的同名分支,建立追踪关系,也就是说,本地的master分支自动”追踪”origin/master分支。
Git也允许手动建立追踪关系。
//指定master分支追踪origin/next分支
git branch --set-upstream master origin/develop
如果当前分支与远程分支存在追踪关系,git pull就可以省略远程分支名。
//本地的当前分支自动与对应的origin库”追踪分支”(remote-tracking branch)进行合并
git pull origin
//如果当前分支只有一个追踪分支,连远程主机名都可以省略。
git pull