git
你的电脑与 GitCafe 服务器之间保持通信时,我们使用 SSH key 认证方式来保证通信安全,
所以在使用 GitCafe 前你必须先建创自已的 SSH key。
1 进入 SSH 目录
cd ~/.ssh
如果还没有 ~/.ssh 目录的话,请先手工创建一个 mkdir ~/.ssh 。
2 生成新的 SSH 秘钥
ssh-keygen -t rsa -C “YOUR_EMAIL@YOUREMAIL.COM”
默认生成ssh文件到 /c/Users/xxx/.ssh/id_rsa
ssh-keygen -t rsa -C “wangjiawei_cd@keruyun.com”
3在gitlab或者gitcafe进行关联ssh公钥 记事本打开复制
SSH 秘钥生成结束后,你可以在用户目录 (~/.ssh/) 下看到私钥 id_rsa 和公钥 id_rsa.pub 这两个文件
关联账号密码 我们电脑默认自动关联了域账号
git config 后面接的是–global参数,这表示你的机器上所有的Git仓库都会使用这个配置
$git config --global user.name “Your Name”
$ git config --global user.email “email@example.com”
查看并修改账号
git config --global --edit
name = AAA
email = XX@i.com
修复此提交使用的标识
git commit --amend --reset-author
git 登录名和密码更改后,使用git pull不生效,解决办法:
在控制面板-》用户账户-》凭据管理器-》普通凭据-》删除原有的账号,然后再重新git pull即可
git常用操作
git
你的电脑与 GitCafe 服务器之间保持通信时,我们使用 SSH key 认证方式来保证通信安全,
所以在使用 GitCafe 前你必须先建创自已的 SSH key。
1 进入 SSH 目录
cd ~/.ssh
如果还没有 ~/.ssh 目录的话,请先手工创建一个 mkdir ~/.ssh 。
2 生成新的 SSH 秘钥
ssh-keygen -t rsa -C “YOUR_EMAIL@YOUREMAIL.COM”
默认生成ssh文件到 /c/Users/xxx/.ssh/id_rsa
ssh-keygen -t rsa -C “wangjiawei_cd@keruyun.com”
3在gitlab或者gitcafe进行关联ssh公钥 记事本打开复制
SSH 秘钥生成结束后,你可以在用户目录 (~/.ssh/) 下看到私钥 id_rsa 和公钥 id_rsa.pub 这两个文件
关联账号密码 我们电脑默认自动关联了域账号
git config 后面接的是–global参数,这表示你的机器上所有的Git仓库都会使用这个配置
$git config --global user.name “Your Name”
$ git config --global user.email “email@example.com”
初始化
git init
关联远程代码地址
git remote add origin http://git.123.git
解除远程关联
git remote remove origin
克隆master项目
git clone http://git.123.git
克隆分支
git clone -b wdg git.123.git
cd 到项目目录下 再进行操作
显示所有分支
git branch -a
切换分支
git checkout wjw
拉取master最新代码
进入master分支
git checkout master
git pull
新建并推送到远程
git checkout -b wjw
git push -u origin wjw
删除本地分支
git branch -d wjw
删除远程分支
git push origin --delete wjw
删除某个文件后 git同步删除
git rm “文件名”
放弃本地修改
git checkout .
上传代码
git add 本地修改过的文件添加到暂存区 stage
git commit 将本地修改过的文件提交到本地库中。
git push origin 将本地库中的最新信息发送给远程库。 默认只推送当前分支
git push -u origin master 将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push了。
git rm --cached 删除暂存区的缓存
git commit --amend 撤销上一次commit提交
master 要合并 wjw分支
保证拉取wjw最新代码
git checkout wjw
git pull
切换到master进行合并wjw
git checkout master
git merge wjw
git push -u origin master
撤销对某个文件的修改(等价从新拉取后替换)
git checkout --a.txt
已经add添加到暂存,还没有commit
取消上一步暂存中的某个文件
git add a.txt
git reset HEAD a.txt(head指向版本头指针 可以git log打印)
修改最后一次commit提交 还没有push
git commit -m “xxx”
git commit --amend 撤销上一次commit提交
版本回退
1 git log 查询同步次数信息 如果信息太多 可以通过git reflog – pretty=online
git reset hard HEAD^ 回退1次
git reset hard HEAD^^ 回退2次
或
git reset hard HEAD~10 回退10次
2 git relog 查看每次版本号
git reset –-hard f676eae 版本回退
暂存代码
git stash
查看暂存列表
git stash list
删除暂存
git stash drop
删除修改
git stash drop stash@{1} //删除 stash@{1} 分支对应的缓存数据
git stash pop //将最近一次暂存数据恢复并从栈中删除
恢复指定的暂存
git stash apply stash@{0}