Git 用法

转载来源

如果是我,我就不会按照下面划掉的步骤来,首先下载git for windows. 安装并添加环境变量到bin。使用sh.exe来管理账户的上传下载。使用git.exe来clone。当然这只是我一个初级用户的用法。以下步骤均在sh中进行。

这是我第一次应用git,以下仅供git的初学者参考。
     github是一个基于git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开。这对于一般人来说公共仓库就已经足够了。


     1.注册账户以及创建仓库
     要想使用github第一步当然是注册github账号了。之后就可以创建仓库了(免费用户只能建公共仓库),Create a New Repository,填好名称后Create,之后会出现一些仓库的配置信息,这也是一个git的简单教程。


     2.安装客户端tortoiseGit
     github是服务端,要想在自己电脑上使用git我们还需要一个git客户端,我这里选用TortoiseGit,他给我们提供了图形界面的操作。在安装之前首先需要安装git,下载地址http://msysgit.github.com/,TortoiseGit下载地址:
     http://code.google.com/p/tortoisegit/
     装完后右键鼠标会多出一些选项来,在本地仓库里右键选择Git Init Here,会多出来一个.git文件夹,这就表示本地git创建成功。右键Git Bash进入git命令行,为了把本地的仓库传到github,还需要配置ssh key。


     3.配置Git
     (1) 首先在本地创建ssh key;
    $ ssh-keygen -t rsa -C "your_email@youremail.com"  //这里可以输入你的用户名而不是邮箱,问题不大
 后面的your_email@youremail.com改为你的邮箱,之后会要求确认路径和输入密码,我们这使用默认的一路回车就行。成功的话会在~/下生成.ssh文件夹,进去,打开id_rsa.pub,复制里面的key。回到github,进入Account Settings,左边选择SSH Keys,Add SSH Key,title随便填,粘贴key。//这一步是注册登录信息到git账户。

 

 (2)为了验证是否成功,在git bash下输入:
    $ ssh -T git@github.com  //这里是登陆到git
 如果是第一次的会提示是否continue,输入yes就会看到:You’ve successfully authenticated, but GitHub does not provide shell access 。这就表示已成功连上github。


 

 

 

 

 

 (3)接下来我们要做的就是把本地仓库传到github上去,在此之前还需要设置username和email,因为github每次commit都会记录他们。
 $ git config --global user.name "your name"
 $ git config --global user.name "your name"$ git config --global user.email "your_email@youremail.com" //设置用户名以及邮箱,必须。但不知道是否需要与账号信息相同,可能并不需要。

 (4)进入要上传的仓库,右键git bash,先git init,再添加远程地址:

  $ git remote add origin git@github.com:yourName/yourRepo.git  //这里是cd到github中要操作的repo地址
 后面的yourName和yourRepo表示你再github的用户名和刚才新建的仓库,加完之后进入.git,打开config,这里会多出一个remote “origin”内容,这就是刚才添加的远程地址,也可以直接修改config来配置远程地址。

 

如果是我,我可能也用不着下面的用法,会直接在本地建立一个空文件夹,sh cd到此文件夹后git init,再git pull origin master,修改其中文件后,先git commit -m "markphrase"修改上传记号再修改.gitignore 后git add -A再git push origin master即同步差异到git。关于.gitignore见第五节。

    4.提交、上传
  (1)接下来在本地仓库里添加一些文件,比如README,
   $ git add README
   $ git add README$ git commit -m "first commit"
   (2)上传到github:
   $ git push origin master
   git push命令会将本地仓库推送到远程服务器。
   git pull命令则相反。
   修改完代码后,使用git status可以查看文件的差别,使用git add 添加要commit的文件,也可以用git add -i来智能添加文件。之后git commit提交本次修改,git push上传到github。
 
  5.gitignore文件
 .gitignore顾名思义就是告诉git需要忽略的文件,这是一个很重要并且很实用的文件。一般我们写完代码后会执行编译、调试等操作,这期间会产生很多中间文件和可执行文件,这些都不是代码文件,是不需要git来管理的。我们在git status的时候会看到很多这样的文件,如果用git add -A来添加的话会把他们都加进去,而手动一个个添加的话也太麻烦了。这时我们就需要.gitignore了。比如一般c#的项目我的.gitignore是这样写的:

bin
.suo
obj

bin和obj是编译目录,里面都不是源代码,忽略;suo文件是vs2010的配置文件,不需要。这样你在git status的时候就只会看到源代码文件了,就可以放心的git add -A了。

 

6. git revert

将当前HEAD转到某个COMMIT版本。首先通过git log查询版本信息,确认后git revert asdlfja190241即可,编辑注释文件即可回滚。

 

7. curl

利用curl命令从shell远程创建仓库。

curl -u -s https://api.github.com/user/repos -d "{\"name\":\"reponame\"}"

done.

8. submodule updation

sometimes after doing git clone.. and you find some third_party's git repos are not automatically downloaded as expected .. so these commands

git submodule update --init --recursive
git submodule update --recursive

are needed.

 

9. make contributes:

1 fork
2 git clone mine
3 git checkout -b new-branch
4 git remote add others git@gihub.com:~~/~~
5 pull request on the repo web-page
6 
7 git remote update
8 git fetch others gh-pages
9 git rebase others/gh-pages

done.

posted on 2016-05-11 10:03  三叁  阅读(154)  评论(0)    收藏  举报

导航