Git
git init 初始化一个git仓库
git add 添加文件
git commit -m 提交
git status 显示git当前状态
git diff 查看difference
git log 显示从最近到最远的提交日志
git reflog 显示命令历史
git reset —hard commit_id 回退到某个版本
git checkout — file 直接丢弃工作区的修改,checkout实际上是用版本库的版本替换掉工作区的版本
git rm 删除文件,同样需要commit提交
git remote add origin git@server_name:path/repo-name.git 关联远程库
git push -u origin master 第一次推送master分支所有内容
git push origin master 推送最新修改
git clone 克隆一个仓库
git branch 查看分支
git branch 创建分支
git checkout 切换分支
git checkout -b 创建并切换分支
git merge 合并某分支到当前分支
git branch -d 删除分支
git log —graph 可以看到分支图
git branch -D 丢弃一个没有被使用过的分支
head 就是当前版本 ,HEAD^ 就是上一个版本,HEAD~100 就是上100个版本
git merge --no-ff -m “merge with no-ff” dev
git stash 将最近的修改储藏起来
git stash list 查看储藏的修改列表
git stash apply 恢复储藏内容,但stash并不删除
git stash drop 删除储藏内容
git stash pop 恢复并删除储藏内容
git remote 查看远程库信息
git remote -v 查看远程库详细信息
git push origin master 推送远程库指定分支
Git pull 从远程库把指定分支抓取下来
git pull
因此,多人协作的工作模式通常是这样:
- 首先,可以试图用git push origin 推送自己的修改;
- 如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;
- 如果合并有冲突,则解决冲突,并在本地提交;
- 没有冲突或者解决掉冲突后,再用git push origin 推送就能成功!
如果git pull提示no tracking information,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream-to origin/。
发布一个版本时,我们通常先在版本库中打一个标签(tag)
tag就是一个让人容易记住的有意义的名字,它跟某个commit绑在一起
git tag 打标签
git tag 查询标签
git tag 给commit的某个版本打上标签
git show 展示tag信息
- 命令git push origin 可以推送一个本地标签;
- 命令git push origin --tags可以推送全部未推送过的本地标签;
- 命令git tag -d 可以删除一个本地标签;
- 命令git push origin :refs/tags/可以删除一个远程标签。
- 在GitHub上,可以任意Fork开源仓库;
- 自己拥有Fork后的仓库的读写权限;
- 可以推送pull request给官方仓库来贡献代码。