github经常使用使用命令

1、git设置

设置用户名与邮箱git

git config --global user.name "My Name"
git config --global user.email "my@email.com"

上面设置命令中带了“–global"参数,是全局配置,影响本机上全部的git项目。也能够对一些单独的项目进行设置,进入要设置的项目目录,进行设置:github

cd dir
git config user.name "My Name"
git config user.email "my@email.com"

查看配置:缓存

cat .git/config

2、建立git仓库及操做

建立git仓库:服务器

mkdir project
cd project
git init #在当前的目录下建一个仓库

检出仓库:并发

git clone git@server:app.git myrepo

查看远程仓库:app

$ git remote -v

添加远程仓库:fetch

$ git remote add [name] [url]

删除远程仓库:this

$ git remote rm [name]


git push origin master

3、更改代码的操做

更新本地代码到最新版本(须要merge才能合到本地代码中):url

git fetch

合并更新后的代码到本地:日志

git merge

更新代码方式的另外一种方法(git pull是git fetch和git merge命令的一个组合):

git pull

修改代码后,查看已修改的内容:

git diff --cached

将新增长文件加入到git中:

git add file1 file2 file3

全部文件所有加入到git中:

git add .

从git中删除文件:

git rm file1
git rm -r dir1

提交修改:

git commit -m 'this is memo'

若是想省掉提交以前的 git add 命令,能够直接用:

git commit -a -m 'this is memo'

commit和commit -a的区别, commit -a至关于:
第一步:自动地add全部改动的代码,使得全部的开发代码都列于index file中
第二步:自动地删除那些在index file中但不在工做树中的文件
第三步:执行commit命令来提交

提交全部修改到远程服务器,这样,其它团队成员才能更新到这些修改

git push

4、git 分支(branch)操做

建立dev分支:

git branch dev

查看项目仓库中有几个分支:

git branch

//*号为当前所在分支
  dev
* master

分支切换:

//切换到dev分支
git checkout dev

查看master分支和dev分支差别:

git diff dev

合并dev分支到master分支(若是合并发生冲突,须要本身解决冲突):

git merge branchname

解决冲突:

当merge命令自身没法解决冲突的时候,它会将工做树置于一种特殊的状态,而且给用户提供冲突信息,以期用户能够本身解决这些问题。固然在这个时候,未发生冲突的代码已经被git merge登记在了index file里了。若是你这个时候使用git diff,显示出来的只是发生冲突的代码信息。

在你解决了冲突以前,发生冲突的文件会一直在index file中被标记出来。这个时候,若是你使用git commit提交的话,git会提示:filename.txt needs merge

在发生冲突的时候,若是你使用git status命令,那么会显示出发生冲突的具体信息。

在你解决了冲突以后,你可使用以下步骤来提交:

第一步(若是须要增长文件):

git add file1

第二步:

git commit

删除dev分支:

git branch -d dev

若是要删除的分支没有被合并到其它分支中去,那么就不能用“git branch -d”来删除它,须要改用“git branch -D”来强制删除。

将分支推送到远端仓库:

git push origin <branch>

删除远程分支:

git push origin --delete <branch>

5、打标签

git能够对某一时间点上的版本打上标签。如在发布某个软件版本(好比 v0.1等),能够打版本标签。

列出已有的标签:

git tag

打标签:

git tag -a v0.1 -m 'tag version 0.1'

把本地tag推送到远程:

git push --tags

删除tag:

git push origin --delete tag <tagname>

6、其它经常使用命令

显示commit日志:

git log

不只显示commit日志,并且同时显示每次commit的代码改变:

git log -p

查看当前仓库的状态:

git status

回滚代码:

git revert HEAD

你也能够revert更早的commit,例如:

git revert HEAD^

销毁本身的修改

git reset --hard

查看最新版本和上一个版本的差别(一个^表示向前推动一个版本)

git diff HEAD HEAD^

git取消已经缓存的文件(慎用):

git reset

git恢复删除了的文件,git pull 从git服务器取出,而且和本地修改merge, 相似于SVN up,可是对删除的文件无论用,恢复删除文件用

git checkout -f

7、githubb备忘

Global setup:
  Download and install Git
  git config --global user.name "imbingdian"
  git config --global user.email imbingdian@gmail.com

Next steps:
  mkdir projectname
  cd projectname
  git init
  touch README
  git add README
  git commit -m 'first commit'
  git remote add origin git@github.com:bingdian/projectname.git
  git push -u origin master

Existing Git Repo?
  cd existing_git_repo
  git remote add origin git@github.com:bingdian/projectname.git
  git push -u origin master
相关文章
相关标签/搜索