Git的安装
在Linux下面的安装,比较简单,我是用Ubuntu14.4 版本。
可以用 git
命令查看自己本机是否安装git。
Linux会给出安装提示:sudo apt-get install git
安装之后,
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
因为要对仓库进行管理,这是分布式的,也可以为不同的仓库创建不同的账户和密码
需要一个位置来放仓库。
来创建一个目录,并将其设置为仓库
mkdir gitTest
cd gitTest
pwd # 显示当前目录
git init # 设置仓库
Git 添加项目
加入我们有一个文件,如何提交到仓库?
git add reamMe.txt
git commit -m "describle of file"
add 命令没有任何提示,显示了Unix的设计宗旨:
没有消息就是最好的消息
注意把reamMe文件放到上面创建的文件夹目录下面。提交之后,如何修改呢?
git status #Git告诉我们文件被修改了,但不知道改了什么内容
git diff # 告诉我们被修改的是什么
Git 版本切换
HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id
。
穿梭前,用git log
可以查看提交历史,以便确定要回退到哪个版本。
要重返未来,用git reflog
查看命令历史,以便确定要回到未来的哪个版本。
Git 远程库
1。为什么需要远程库?
主要是为了多人共同开发的时候,需要。
2。如何做?
首先,需要在github上创建自己的账号。
然后,在Linux上,先用ssh的方式创建本地的密钥对。
最后在github自己账号的setting中,添加新的密钥对即可。
这样就完成了添加工作。
如果有多台设备,可以添加多个公钥到github账号。
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001374385852170d9c7adf13c30429b9660d0eb689dd43a000
3。那么如何从远程得到一个库呢?
注意git有两张协议,一种是git,还有一种是http的形式。如果下面的地址是你的伙伴的本机git地址,那么是需要输入他的git账户密码的;
如果是以http的形式,不需要账户密码,但是速度相对来说会慢很多。
git clone git@github.com:michaelliao/gitskills.git
4。如果是本地已经有了一个库,要直接传到github上去,可以这样:
git remote add origin git@github.com:michaelliao/learngit.git
以后如何要删除一个文件夹,和某个文件,再需要提交新的code的时候,可以这样:
git pull origin master
git rm game-exe -r -f # 删除文件夹
git -r read.txt # 删除文件
git push origin master
为什么每次还需要先pull下来,然后再去push呢?是为了控制版本冲突,因为有可能别的人先push了一次,这个时候你不是最新版本,这个时候你再去push,会造成版本不同
注意这里的michaelliao后面的改成远程的账户和git名称
需要注意的是,使用git命令,需要首先进入repository的目录
branch
关于分支,比如我们创建了dev分支,如何切换到dev分支?
git checkout -b dev
因为前面checkout
命令,就是用来指定版本的。
如果需要回到主分支,只需要:
git checkout master
如果需要合并,利用merge
git merge dev