首页 > 代码库 > 【工作笔记】Git与Github经常使用使用方法

【工作笔记】Git与Github经常使用使用方法

Git安装
http://www.liaoxuefeng.com/

Git配置用户信息:
git config –global user.name “SCOTT”
git config –global user.email xxx@qq.com

Git激活仓库
cd newDir
git init

Git查看当前状态
git status

Git比較与改动后文件的差异
git diff

Git增加改动后的文件
git add files

Git提交改动的文件
git commit -m “modify message”

Git查看历史操作记录
git log—查看提交历史
git log –pretty=oneline
git reflog—能够用来查看未回退之前的版本号号 然后用git reset –hard 版本号号来恢复

Git版本号回退
HEAD代表当前版本号 HEAD^表示上一版本号 HEAD^^表示上上版本号… 假设100呢?HEAD~100
git reset –hard HEAD^

Git撤销文件改动
git checkout – file能够丢弃工作区的改动
git reset HEAD file能够把暂存区的改动撤销掉(unstage)
git reset命令既能够回退版本号,也能够把暂存区的改动回退到工作区。当我们用HEAD时,表示最新的版本号。

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的改动时,用命令git checkout – file。
场景2:当你不但改乱了工作区某个文件的内容,还增加到了暂存区时,想丢弃改动,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。


场景3:已经提交了不合适的改动到版本号库时,想要撤销本次提交,參考版本号回退一节,只是前提是没有推送到远程库。

Git远程克隆
假设想对某个开源项目出一份力。能够先把该项目的 Git 仓库复制一份出来,这就须要用到 git clone 命令
克隆仓库的命令格式为 git clone [url]

如:
git clone git://github.com/schacon/grit.git
git clone git@github.com:xxx/Test.git—会在本地当前文件夹建立一个Test文件夹与之同步。
代码改动后 本地add commit 最后同步到远程仓库:git push origin master

Git远程同步(使用github)
要关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git;
关联后,使用命令git push -u origin master第一次推送master分支的全部内容;
此后,每次本地提交后。仅仅要有必要,就能够使用命令git push origin master推送最新改动。
分布式版本号系统的最大优点之中的一个是在本地工作全然不须要考虑远程库的存在,也就是有没有联网都能够正常工作,而SVN在

没有联网的时候是拒绝干活的!当有网络的时候,再把本地提交推送一下就完毕了同步,真是太方便了!


以下是摘录的网上的一个:
1.创建一个新的repository:

先在github上创建并写好相关名字。描写叙述。

$cd ~/hello-world //到hello-world文件夹

$git init //初始化

$git add . //把全部文件增加到索引(不想把全部文件增加,能够用gitignore或add 详细文件)

$git commit //提交到本地仓库,然后会填写更新日志( -m “更新日志”也可)

$git remote add origin git@github.com:WadeLeng/hello-world.git //增加到remote

$git push origin master //push到github上

2.更新项目(新加了文件):

$cd ~/hello-world

$git add . //这样能够自己主动推断新加了哪些文件,或者手动增加文件名称字

$git commit //提交到本地仓库

$git push origin master //不是新创建的。不用再add 到remote上了

3.更新项目(没新加文件,仅仅有删除或者改动文件):

$cd ~/hello-world

$git commit -a //记录删除或改动了哪些文件

$git push origin master //提交到github

4.忽略一些文件,比方.o等:*

$cd ~/hello-world

$vim .gitignore //把文件类型增加到.gitignore中,保存

然后就能够git add . 能自己主动过滤这样的文件

5.clone代码到本地:

$git clone git@github.com:WadeLeng/hello-world.git

假如本地已经存在了代码,而仓库里有更新。把更改的合并到本地的项目:

$git fetch origin //获取远程更新

$git merge origin/master //把更新的内容合并到本地分支

6.撤销

$git reset

7.删除

$git rm * // 不是用rm


//——————————常见错误———————————–

1.$ git remote add origin git@github.com:WadeLeng/hello-world.git

错误提示:fatal: remote origin already exists.

解决的方法:$ git remote rm origin

然后在运行:$ git remote add origin git@github.com:WadeLeng/hello-world.git 就不会报错误了

  1. $ git push origin master

    错误提示:error:failed to push som refs to

    解决的方法:$ git pull origin master //先把远程服务器github上面的文件拉先来,再push 上去。

//——————————————————————————

<script type="text/javascript"> $(function () { $(‘pre.prettyprint code‘).each(function () { var lines = $(this).text().split(‘\n‘).length; var $numbering = $(‘
    ‘).addClass(‘pre-numbering‘).hide(); $(this).addClass(‘has-numbering‘).parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($(‘
  • ‘).text(i)); }; $numbering.fadeIn(1700); }); }); </script>

【工作笔记】Git与Github经常使用使用方法