命令如下:git clone -b <branch name> [remote repository address]
主要就是在clone的时候,后面添加branch的信息。
报错:
> git clone -b jiangzhonglian https://github.com/p1cn/putong-recommendation-offline.git
Initialized empty Git repository in /home/jiangzhonglian/putong-recommendation-offline/.git/
error: The requested URL returned error: 403 Forbidden while accessing https://github.com/p1cn/putong-recommendation-offline.git/info/refs
fatal: HTTP request failed
> git clone -b jiangzhonglian https://jiangzhongian@github.com/p1cn/putong-recommendation-offline.git
config 配置信息
git config --global user.name "jiangzhonglian"
git config --global user.email "jiang-s@163.com"
clone 远程节点
git clone http://gitlab.apachecn.org/apachecn/spark-doc-zh.git
然后手动新建一个 license, 这样就会出现 Master 分枝
built 分枝
查看本地分支 或者 远程 所以分枝
$ git branch
$ git branch -a
git checkout remotes/origin/0.19.X
git checkout remotes/origin/master
新建并获取远程分枝 0.19.X 并切换到 0.19.X 分枝上
$ git checkout -b 0.19.X remotes/origin/0.19.X
新建并切换到新本地分支
git checkout -b jiangzhonglian
=>
新建本地分支
git branch jiangzhonglian
切换本地分支
git checkout jiangzhonglian
pull 分枝
获取 master 代码
$ git pull origin master
# git pull 失败 ,提示:fatal: refusing to merge unrelated histories
# git pull origin master --allow-unrelated-histories
添加远程分枝,获取远程分枝
$ git remote add origin_ml https://github.com/apachecn/MachineLearning.git
$ git pull origin_ml master
push 分枝
删除本地分支:(先切换到其他分支上)
# git branch -d jiangzhonglian
更新分支
# git commit -m "更新分支"
删除远程分支:
# git push origin :jiangzhonglian
提交新分支:
git push origin jiangzhonglian
1.查看log (简化 --pretty=oneline)
git log
git log --pretty=oneline
git reflog # 查看历史版本ID记录
2.回滚数据
git reset --hard 版本ID
当前版本 : HEAD
上一个版本: HEAD^
上上一个版本: HEAD^
往上100个版本: HEAD~100。
例如: git reset --hard 40b72da7f5578a2d0fbfb30e7c9772c05af634a9
3.撤销修改
1.rm误删的情况(非git操作)
- rm 文件
- git checkout -- 文件/目录
2.git rm操作,commit前
- git rm 文件
- git reset HEAD 文件/目录
- git checkout -- 文件/目录
3.git rm操作,commit后(没有提交到远程仓库)
- git rm 文件/目录
- git g -m 'delete kafka2hive'
- git reset HEAD 文件/目录
- git checkout -- 文件/目录
4.查看diff
git diff HEAD -- 文件名 # 你会发现 仓库和本地 版本内容不一致