Git 初始化
//从远程仓库克隆到本地
git clone [url]
// 在当前文件夹下创建一个git空仓库或重新初始化一个已经存在的仓库
git init
//配置个人信息,每次提交到本地或者远程都会使用这些信息,
// 添加个人姓名和邮箱,global 代表这台主机上所有的git仓库都使用这个配置
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
//添加远程仓库
git remote add <远程仓库名> <远程仓库地址>
//查看远程主机
git remote -v
Git 提交
//将修改后的文件提交到暂存区
git add filename
//将版本库里暂存区的内容提交到分支的commit中
git commit -m "comment"
//从远程仓库origin拉取主分支master并和当前分支合并
git pull <远程主机名> <远程分支名>
//拉取最新的远程仓库信息到本地
git fetch <远程主机名> <远程分支名>
//将div分支内容合并到当前分支中
git merge div
//将本地分支推送到远程仓库的指定分支
git push <远程仓库名> <本地分支名>:<远程分支名>
//合并两个不同的项目,第一次提交可能会出现这种问题
git pull <远程仓库名> <本地分支名>:<远程分支名> --allow-unrelated-histories
//查看从最近到最远的历史记录, 显示commit ID和作者 时间
git log
//以图表的形式展现提交日志,并简化内容
$ git log --graph --pretty=oneline --abbrev-commit
//回到以前的版本
git reset --hard HEAD^(HEAD~100)/commit ID
//查看命令历史
git reflog
Git 分支操作
//查看所有本地分支
git branch
//查看所有远程分支
git branch -r
//创建分支dev后切换到分支dev
git checkout -b dev
//创建分支 dev
git branch dev
//切换分支至 dev
git checkout dev
//删除分支dev
git branch -d dev
//根据远程分支创建本地分支,并且切换到创建的分支上, 本地分支与远程分支建立映射
git checkout -b <分支名> <远程仓库名>/<远程分支名>
git rebase作用
- 合并多个commit 为一个完整的commit
git rebase -i [startpoint] [endpoint] (-i 代表以交互界面让用户编辑完成 - 将一段commit 粘贴到另一个分支上
git rebase [startpoint] [endpoint] --onto [branchName]
注意:
- 每次修改,如果不add到暂存区,那就不会加入到commit中。
- git reset HEAD filename : 把暂存区的修改撤销, 重新放回工作区
- git checked -- filename : 将在工作区修改的内容撤销(未add之前)
- HEAD指针指向主分支master
本文部分摘自:
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
http://www.ruanyifeng.com/blog/2014/06/git_remote.html
网友评论