您的位置:首页 > 其它

git命令的使用

2015-06-18 14:22 369 查看

git命令的使用

本地生成git远程库并关联、提交

git远程库为空的时候

一般流程如下:(远程库为空的意思是git的远程库里面什么也没有,如果有ReadMe就不是空,需要用下面另一种方法)

git init

————在本地初始化一个git库,

git add *

————把当前文件夹下所有文件添加到 缓存区

git commit -m “zhushi”

————提交上一步添加的文件到本地库,

git remote add origin git地址 比如(git remote add origin git@github.com:shijinliang/sjlTest.git)

————将第一步初始化的git库与git远程端关联起来,

git push origin master

————将刚才commit的版本提交到关联的远程端。

git远程库里面已经有文件的时候

一般流程如下:

git clone git地址

比如(git clone git@github.com:shijinliang/sjlTest.git)

————将远程端的内容先下载到本地,下载下来之后,需要进入文件夹里面进行下一步操作,git命令行必须是在当前工程的目录下的 .git 文件夹所在文件夹或者其子文件夹下执行(.git 文件夹为隐藏文件夹,需要设置电脑为隐藏文件夹可见)

git add *

————把需要提交的文件放在git库的目录下之后,执行此命令,添加所有文件到缓存区,

git commit -m “注释”

————同上面解释

git push origin master

————同上面解释

这样就把项目提交上去了。

git拉取 (git pull)

开发过程中(本地已经有远程端代码的时候),如果需要push或修改代码之前,先pull一下,让本地文件和远端库属于同一个版本,然后自己才可以push(提交)。

同时,开发的时候,做完一个模块或一个功能的时候,可以commit一次,只commit,不push,commit提交在本地,然后在需要的时候直接push,会把之前所有的commit(上次push到这次push之间的commit)全部推送上去。

其他

git status

查看当前本地文件状态,一般分为两类,

Changes not staged for commit: (use “git add …” to update what will

be committed) (use “git checkout – …” to discard changes in working

directory)

modified: test/main.m



Untracked files: (use “git add …” to include in what will be

committed)

test/main2.m

上面两种,第一种显示的是本地文件被修改的(这些文件都存在于库里面),第二种是库里没有的文件,在本地有,上面的提示写的很清楚,

第一种是可以通过 git add “test/main.m” 或者 git checkout – “test/main.m” 去把对应的file 更新到缓存区,

第二种只能通过 git add “test/main2.m” 的方法去添加更新。

(上面 git add/checkout 引号中间的地址要和上面 git status 给出的地址要一致。)

git stash

这个命令一般用在,本地有文件修改,但是现在不想提交的情况下,而且现在需要切换到别的分支或者需要更新别的代码的时候(本地有修改不提交,这个时候pull(更新)是会提示ERROR的),可以使用到git stash save

文件暂存在一个暂存区,然后此时本地代码是和修改前的版本一模一样,就可以做自己的其他操作,

做完其他工作之后,需要继续之前的开发,这个时候通过 git stash pop 把暂存区的文件再提取出来,继续开发。

•当然,暂存区也是可以存多次的,这个自己了解下吧,

–git stash save/ git stash pop–

.gitignore

忽略文件的一个列表,这个文件夹可以在git网站建库的时候创建,或者在本地通过文件另存保存一个,可以起到很好的作用,把不必要提交的文件忽略掉

失去版本控制

上面的.gitignore是把本地文件,不提交到库里的做法,但是如果是库里的文件被修改,而自己不想提交,想让它失去版本控制怎么办呢,通过下面方法:

git update-index –assume-unchanged 文件名

(后面的文件名包括路径和后缀,建议在文件当前路径下使用 命令,这样文件名就不用包含路径了。)

git update-index –no-assume-unchanged 文件名 和上面类似。

技巧

•中文在命令行中一般显示的是八进制的字符编码,可以用一下命令修改: git config –global core.quotepath false 。

(通过将Git配置变量 core.quotepath 设置为false,就可以解决中文文件名称在这些Git命令输出中的显示问题)

•2

待续!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: