在本地装一个git,并装上GitBash。(不会?会装QQ就会装git。。)
去GitHub官网上注册一个账号。给个传送门GitHub官网
后面会用到的,而且很重要的:
从上图中可以看出,我们日常编码时,首先是把工作空间里的更改的代码通过操作①来推送到暂存区(index,stage),然后如果我们确认这些代码正确,无须修改,那么就可以把它通过②推送给本地master分支,这里我们可以把master分支理解成本地的临时仓库,我们可以从这里恢复代码,也可以通过这个分支进行提交到远程GitHub上的master分支,把你的代码提供给别人。
上图我们只是描述了由本地逐步推向远程的过程。我们先将这个高明白,后面我会反过来再操作一遍。
1.如果我们对代码进行了更改,这里我们以一个文件readme.txt为例,来讲解。(也就是说我们现在工作区间假设是E://firstrep,里面有一个文件readme.txt)
2.首先我们打开D://firstrep,在该目录下在空白处点击右键打开给Git Bash.exe,初始化一个本地仓库。
Administrator@HJQ1EBGYSWRMA1K /e/firstrep
$ git init
Initialized empty Git repository in E:/firstrep/.git/(master)
注意:只有以“$”开头的才是我们写的命令,其他的都是系统自动生成的提示信息,其中执行初始化命令之后我们可以看到路径名后面多了一个“master“,这说明我们初始化成功。
3.我们现在来找一下工作区间,版本库,暂存区,以及本地master分支
工作空间:E:/firstrep
版本库:E:/firstrep/.git/(master)注意,这里.git文件夹是隐藏的,不可见,可以更改文件夹属性使其显现出来。
暂存区和master分支:这两个东西都存在版本库文件夹下
4.我们先对该文件进行更改:
git is very easy.
然后,我们把它提交到版本库的暂存区里(index,stage),执行如下代码,查看git状态
$ git status
On branch masterInitial commit
Untracked files:
(use “git add …” to include in what will be committed)readme.txt
nothing added to commit but untracked files present (use “git >add” to track)
这里会提示我们说:在工作空间多了一个文件,我们还没有添加到版本库
5.下面我们把它加到版本库里的暂存区。
git add –all
这样,我们第①个环节已经执行结束。
1.我们刚刚把更改的readme.txt.添加到暂存区(index,stage),现在我们把再把它加到本地master分支。
$ git commit -m “测试
[master (root-commit) 74c27df] 测试
1 file changed, 1 insertion(+)
create mode 100644 readme.txt
我们现在通过上面一行命令,讲readme.txt提交到本地master分支(其实这么说不是很准确,其实提交的是修改,而不是全部内容,这里我们可以先这么简单地理解)。下面我们来查看一下git的状态
$ git status
On branch master
nothing to commit, working directory clean
OK,至此,我们已经成功完成了本地代码的提交。即①②两步。
下面我们进行第三部。
现在应该是远程有一个分支,本地有一个分支,我们在GitHub创建一个仓库(repository)。假设仓库地址为:https://github.com/hellochillax/Yard.git
下面我们进行推送:
1.添加远程仓库的地址:
$ git remote add origin https://github.com/hellochillax/Yard.git
这里就产生了一个对应关系:origin–>https://github.com/hellochillax/Yard.git
2.进行推送操作:
$git push origin master
然后系统会提示你输入GitHub的账号密码,输入正确的账号密码后,点击回车,系统就会进行提交工作,而且会显示进度。当然,我这里就不演示了,以防把我原来的项目覆盖掉了。(上面的GitHub地址是我在GitHub上的一个项目,不可随便推。。。当然你看到这里也别想着去搞破坏,因为你不知道我的GitHub的账号密码。。。)
我们上面所有的内容解决了本地推送到GitHub,下面我们发过来讲解从GitHub上拉取被人写的内容到本地仓库。
下面,我们还是分三步来讲:
有了上面的经验,我们就可以快一点了~
上命令:
$ git pull origin master
上面的命令是,从远程拉取文件到本地。(同样的,我就不点回车给大家演示了
在执行之前,我们先查看一下git的状态:
$ git status
On branch master
nothing to commit, working directory clean
呦呦呦,什么情况,怎么是“nothing to commit”呢,怎么回事,不应该是再从版本库中复制内容到工作空间吗,怎么能是不需要提交呢。
别急,你打开工作目录,发现,工作目录里已经存在了GitHub上的所有文件。也就是说,步骤①,其实已经帮我们搞定了①②③要做的事。所以,②③步骤其实不要我们做任何事情。。
git init 初始化一个本地仓库
git add –all 添加所有文件到暂存区(stage,index)
git commit -m “描述信息” 提交更改到本地master分支
git status 查看git当前状态
git diff 查看改动后和改动前的不同之处
git log 获得文件更改的历史记录
git reset –hard HEAD^ 回退本地分支到上一个版本
git reset –hard HEAD~n 回退本地分支到上n个版本
git checkout – readme.txt:把readme.txt文件在工作区的修改全部撤销
git remote :获得远程库列表
git branch -u origin/master master 本地跟踪远程
Git鼓励大量使用分支:
查看分支:git branch
创建分支:git branch
切换分支:git checkout
创建+切换分支:git checkout -b
合并某分支到当前分支:git merge
删除分支:git branch -d
ssh-keygen -t rsa -C “hello@example.com” 创建SSH Key
命令行通用操作:
pwd:显示当前路径
ls -ah:显示文件列表(包括隐藏文件)
cat readme.txt:显示文件内容
rm readme.txt: 删除文件
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文地址:http://blog.csdn.net/hello_chillax/article/details/47405887