自报家门
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
查看当前用户名与邮箱
git config --global --list
创建版本库
$ mkdir learngit
$ cd learngit
$ pwd
/Users/michael/learngit
$ git init
Initialized empty Git repository in /Users/michael/learngit/.git/
git add files
git commit -m "message"
回退与前进:
git reset --hard HEAD~1
git reset --hard 未来某个版本的部分号码即可
git reflog 查看命令历史
编辑文本软件:
Notepad++的默认编码设置为UTF-8 without BOM
分支管理
创建分支
git checkout -b 分支名*(创建并切换)
git branch 分知名(创建分支)
git branch -d 分知名(删除分支)
git checkout master git切换分支
在master主线上,写git merge dev合并分支与主线
因此,多人协作的工作模式通常是这样:
-
首先,可以试图用
git push origin <branch-name>
推送自己的修改; -
如果推送失败,则因为远程分支比你的本地更新,需要先用
git pull
试图合并; -
如果合并有冲突,则解决冲突,并在本地提交;
-
没有冲突或者解决掉冲突后,再用
git push origin <branch-name>
推送就能成功!
如果git pull
提示no tracking information
,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream-to <branch-name> origin/<branch-name>
。
为了不冲突,可以先pull再push。