Git服务器部署及客户端使用

Git服务器:

在/home/下

mkdir git-test

cd git-test

git init --bare git-test.git

Git客户端:

mkdir git-client

cd git-client

git clone [email protected]:/home/git-test/git-test.git

cd git-test

touch readme

git add .

git status

git commit -m "add readme"

git push origin master:master

坑:

服务器端老老实实用git init --bare初始化仓库,不要用git init,--bare这种方式的特点是不带工作区,不支持git的push/pull/commit等常规操作,好处是不与客户端(工作区)冲突。

关于gitignore的使用:

经过上面的几步,我们已经得到了一个基本的master分支,以及提交了第一个文件readme。这时候很多同学特别着急的去把项目代码拷贝到GIT文件下,的确能用,但是等你用IDE编译一次后才发现无意中GIT跟踪了很多用不到的文件,典型的如IDE的配置文件、“.o”文件、“.tmp”文件、and so on...

这时候你本意只改了一个文件,但git status一看已经淹没在一堆临时文件的海洋中了。这时你可能突然想到git支持忽略功能啊,一股脑的百度谷歌后信心满满的添加了一个.gitignore文件,然后提交再编译再看git status,突然心里骂了句“WC?”,这堆临时文件怎么还是被监控到了。

重点:已经被提交到仓库的文件无条件进行版本控制,也就是说当你已经把这个临时文件(temp.o文件)提交到远端后,你远程和本地的.git文件已经存储了它的信息,这时gitignore对temp.o文件是无效的。

正确的打开姿势是这样的:

先分析你的工程临时文件的种类,编写.gitignore文件并上传到远端,再把工程代码添加到本地,这时你用git status查看一下,你要忽略的文件已经没有被跟踪了,最后提交到远端over。

你可能感兴趣的:(Git服务器部署及客户端使用)