Git和Github 操作命令
1.环境搭建
安装Git,使用命令 sudo apt-get install git
生成ssh key,使用命令ssh-keygen -t rsa -C 你的email
回到github,进入Account Settings,左边选择SSH Keys,Add SSH Key,title随便填,粘贴key
2.本地操作
git init建立git仓库,把这个目录变成Git可以管理的仓库
git add README.md 文件添加到仓库
git add . 不但可以跟单一文件,还可以跟通配符,更可以跟目录。一个点就把当前目录下所有未追踪的文件全部add了
git commit -m "first commit" 把文件提交到仓库
git remote add origin git@github.com:XXXXX.git 关联自己的远程仓库
git push -u origin master 把本地库的所有内容推送到远程库上
添加文件到 Git 仓库,分两步:
第一步,使用命令git add ,注意,可反复多次使用,添加多个文件;
第二步,使用命令git commit,完成。
如果项目已经在远程git仓库
第一步,克隆远程代码git clone git@github.com:XXXXX.git
第二步,添加所有代码,git add . ,然后提交git commit -m 'first commit'
第三步,同步,git push -u origin master,完成。
3.GitHub操作
git clone git@github.com:XXXXX.git 下载github项目
git remote add origin git@github.com:XXXXX.git下载github项目并创建本地分支
git pull origin master 上传github之前,要先pull一下
git push -u origin master上传代码到github远程仓库
git push origin dev将本地分支上传上去
4.分支操作
git branch 列出所有分支
git add readme.txt 向仓库添加新的文件
git checkout dev切换回 dev分支
git checkout -b dev创建 dev 分支,创建并切换
git merge dev把dev 分支的工作成果合并到 master 分支上
git fetchorigin更新的内容合并到本地分支origin是本地仓库
git merge origin/master把更新的内容合并到本地分支
git push origin master把该分支上的所有本地提交推送到远程库
git push origin dev推送dev分支
从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交
在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;
建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;
从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。
当你从远程仓库克隆时,实际上 Git 自动把本地的 master 分支和远程的 master 分支对应起来了,并且,远程仓库的默认名称是 origin
git branch -d dev删除 dev 分支
git branch -D 强行删除
5.仓库状态
git status仓库状态
git log可以查看提交历史
git reset --hard 3628164穿梭到历史
git reflog用查看命令历史,以便确定要回到未来的哪个版本
git diff readme.txt
修复 bug 时,我们会通过创建新的 bug 分支进行修复,然后合并,最后删除;
当手头工作没有完成时,先把工作现场git stash一下,然后去修复 bug,修复后,再git stash pop,回到工作现场。
如果要丢弃一个没有被合并过的分支,可以通过
6.常见错误解决办法
使用git 添加远程github仓库的时候提示错误:fatal: remote origin already exists.
解决办法如下:
1、先删除远程 Git 仓库
$ git remote rm origin
2、再添加远程 Git 仓库
$ git remote add origin git@github.com:FBing/java-code-generator
如果执行 git remote rm origin 报错的话,我们可以手动修改gitconfig文件的内容
$ vi .git/config
把 [remote “origin”] 那一行删掉就好了。