命令如下:
git clone -b <branch name> [remote repository address]
主要就是在clone的时候,后面添加branch的信息。
1报错: 2> git clone -b jiangzhonglian https://github.com/p1cn/putong-recommendation-offline.git 3Initialized empty Git repository in /home/jiangzhonglian/putong-recommendation-offline/.git/ 4error: The requested URL returned error: 403 Forbidden while accessing https://github.com/p1cn/putong-recommendation-offline.git/info/refs 5 6fatal: HTTP request failed 7> git clone -b jiangzhonglian https://jiangzhongian@github.com/p1cn/putong-recommendation-offline.git
config 配置信息
1git config --global user.name "jiangzhonglian" 2git config --global user.email "jiang-s@163.com"
clone 远程节点
git clone http://gitlab.apachecn.org/apachecn/spark-doc-zh.git
然后手动新建一个 license, 这样就会出现 Master 分枝
built 分枝
1查看本地分支 或者 远程 所以分枝 2$ git branch 3$ git branch -a 4git checkout remotes/origin/0.19.X 5git checkout remotes/origin/master 6 7新建并获取远程分枝 0.19.X 并切换到 0.19.X 分枝上 8$ git checkout -b 0.19.X remotes/origin/0.19.X 9 10新建并切换到新本地分支 11git checkout -b jiangzhonglian 12=> 13新建本地分支 14git branch jiangzhonglian 15切换本地分支 16git checkout jiangzhonglian
pull 分枝
1获取 master 代码 2$ git pull origin master 3# git pull 失败 ,提示:fatal: refusing to merge unrelated histories 4# git pull origin master --allow-unrelated-histories 5 6添加远程分枝,获取远程分枝 7$ git remote add origin_ml https://github.com/apachecn/MachineLearning.git 8$ git pull origin_ml master
push 分枝
1删除本地分支:(先切换到其他分支上) 2# git branch -d jiangzhonglian 3更新分支 4# git commit -m "更新分支" 5 6删除远程分支: 7# git push origin :jiangzhonglian 8 9提交新分支: 10git 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 -- 文件名 # 你会发现 仓库和本地 版本内容不一致