文件初始化及拉取
// 初始化空文件夹作为git项目文件夹
git init
// 从远程仓库clone项目到本地仓库
git clone git@git.oschina.net:ifengye/test.git
代码同步及提交
// 从远程仓库同步到本地
git pull origin master
// 把本地文件添加到添加到暂存区
git add .
// 将暂存区的代码提交到本地仓库,说明为‘init’
git commit -m 'init'
// 将本地仓库的代码推送到远程仓库
git push origin master
仓库分支
- 查看分支
// 查看本地仓库分支
git branch
// 查看远程仓库分支
git branch -r
// 查看所有仓库分支
git branch -a
// 查看各个分支最后一个提交信息
git branch -v
// 查看哪些分支已经合并入当前分支
git branch --merged
// 可以查看本地分支对应的远程分支
git branch -vv
- 创建分支
// 创建本地仓库分支
git branch branchName
- 重命名分支
// 给分支重命名
git branch -m oldName newName
- 操作分支
// 将分支切换到master
git checkout master
// 如果分支存在则只切换分支,若不存在则创建并切换到master分支
git checkout -b master
// 合并本地某分支到当前分支
git merge <name>
// 将远程分支test_remote拉取下来到本地test分支
git checkout -b test origin/test_remote
// 将远程分支test拉取下来到本地test分支
git checkout test
- 合并分支
//有缓存区
git checkout master //切换分支到master
git merge test //将test分支合并到master分支,这时master分支指向的提交就是test分支最新的提交,并不会产生新的提交。
//无缓存区
git checkout master //切换分支到master
git merge test //将test分支合并到master分支,如果有冲突,需要解决冲突后,将改动添加到暂存区,然后git merge --abort,之后再恢复暂存区,再提交后merge。这时就会增加一个提交,相比较于fast-forward merge。
- 删除分支
//删除本地test分支
git branch -d test
// 删除远程test分支
git push origin --delete test
// 删除远程test分支
git push origin :test