Git 团队常用命令操作指南

命令如下:
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操作)

  1. rm 文件
  2. git checkout -- 文件/目录

2.git rm操作,commit前

  1. git rm 文件
  2. git reset HEAD 文件/目录
  3. git checkout -- 文件/目录

3.git rm操作,commit后(没有提交到远程仓库)

  1. git rm 文件/目录
  2. git g -m 'delete kafka2hive'
  3. git reset HEAD 文件/目录
  4. git checkout -- 文件/目录

4.查看diff

git diff HEAD -- 文件名 # 你会发现 仓库和本地 版本内容不一致

5.新建gist

https://gist.github.com/jiangzhonglian

posted @ 2017-09-26 10:34  片刻  阅读(275)  评论(0编辑  收藏  举报