1、git 分支
本地git是一个仓库,远程git也是一个仓库。所以你可以在本地新建立一个分支,和远程仓库没有关系(你也可以在远程仓库新建一个分支)
本地分支
git branch //列出你在本地的分支
git branch branchName //新建本地分支(branchName是分支名字)
git checkout branchName //切换到你想要的分支 (当你切换分支的时候,你的内容也随之切换了)
git checkout -b branchName //创建并切换到你想要的分支
git branch -d branchName //删除分支
git merge branchName //合并到主分支(需要先checkout到主分支)
远程分支
//查看当前的本地分支与远程分支的关联关系
git branch -vv
//创建远程分支
git push origin branchName //先创建本地分支,再push到远程
//把本地分支与远程origin的分支进行关联处理(通过 --set-upstream-to 命令)
git branch --set-upstream-to=origin/branchName
//一种删除远程分支方法
git push origin :branchName
2、git 版本前进和回退
git log //查看git 各种操作的历史记录
git reset --hard e144d5 //前进或者后退到 你想要的版本,e144d5是一个版本id的前几个字符,git会自动查找。
//关于--hard 还可以有 其他选择,
--soft 回退了HEAD,但是暂存区 和 工作区的内容会保留
--mixed 回退了HEAD和暂存区的内容,保留了 工作区的内容
--hard 把HEAD ,暂存区,工作区的内容都回退了
//或者
git reset --hard HEAD^ //回退到上一次提交
git reset --hard HEAD^^ //回退到上两次提交
git reset --hard HEAD~3 //回退到上3次提交
git reflog //记录你之前操作的命令,因为你回退版本之后,git log 就看不到你之前的版本id了,你要前进,你就需要使用 git reflog查找之前的版本id
3、git ssh
首先进入git bash窗口
ssh公钥 和 私钥 是成对出现的,首先查看系统里面是否有 公钥和私钥
//进入 .ssh目录
cd ~/.ssh
//输入 ls命令查看
ls
//如果有公钥和私钥,会成对出现,.pub后缀就是公钥;如果没有会提示你
没有需要先创建
//创建ssh
ssh-keygen -t rsa -C "youremail@163.com"
-t 指定密钥类型为后面的rsa
-C 设置注释文字,比如后面的邮箱,设置成你的邮箱就行了
//一直连续3个敲回车就行了,主要是确认公钥的存储地址,要不要设置密码提交啊这些
//查看本机公钥
cat id_rsa.pub
公钥目录 直接windows搜索公钥文件就可以了,如果需要删除ssh,直接删除ssh文件夹(公钥私钥所在文件夹)
//查看本机公钥目录
~/.ssh
//克隆项目
git clone git@github.com:xilongCN/shangkel.git
输入之后有可能会有确认提示,需要输入yes 确认,重要的事情说3遍!!!
ssh和https互换
//查看远程仓库地址
git remote -v
//切换远程仓库地址(比如从ssh 换到 https,或者https之间的互换等)
git remote set-url origin [ssh的url]
4、git 设置用户名和邮箱
//查看当前库的用户名和邮箱(如果没有设置,就是全局的用户名和邮箱)
git config user.name
git config user.email
//设置当前库的用户名和邮箱
git config user.name "Sallenkey"
git config user.email "xxx@163.com"
//设置全局用户名和邮箱
git config --global user.name "xilong"
git config --global user.email "xilong@163.com"
本地的git需要设置用户名和邮箱,其本质是本地git客户端的一个变量,不随git库改变,但也可以为某个库单独设置用户名和邮箱。
github多人协作,添加新的Collaborators(参与者)到项目
如何让github上别的开发者能够修改自己账号下的repository,实现多人协作参与同一个项目,只需要在Settings的Collaborators选项中添加参与者的github账号即可,其实质是将别人github上的公钥写入到当前reposibory的公钥文件中(github帮我们完成,我们无法看到),这样,其他人也能够修改当前自己账号下的repository了。
网友评论