git使用笔记

1、克隆项目
git clone 链接 
git clone git://github.com/schacon/grit.git mygrit #本地会创建mygrit目录,存放git仓库数据
2、查看文件状态
git status
3、添加要提交的代码、提交、push
git add filename/
git commit -m 'log messsage'
git push

4、配置某些文件忽略,不修改状态
在Git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改 .gitignore 文件的方法(在根目录下创建.gitignore文件)。这个文件每一行保存了一个匹配的规则例如:
# 此为注释 – 将被 Git 忽略
            *.a       # 忽略所有 .a 结尾的文件
            !lib.a    # 但 lib.a 除外
            /TODO     # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
            build/    # 忽略 build/ 目录下的所有文件
            doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
    这样设置了以后 所有的 .pyc 文件都不会添加到版本库中去。

5、不想继续追踪某个文件
git update-index --assume-unchanged your_file_path

6、如果再次想继续追踪某个文件
git update-index --no-assume-unchanged your_file_path


7、如果本地文件修改了,怎样从服务端拉取?
git checkout filename #拉取单个文件
git checkout . #拉取当前目录文件


8、设置email 和user
git config --global user.email little_star14@sina.cn
git config --global user.name "joe-PC"

9、branch相关
git branch -a #查看服务端分支
git branch    #查看本地分支
git branch  dev  #创建dev分支
git checkout dev #切换到dev分支

10config相关
git config --list #查看已有的配置信息
git config user.name  # 查看某个环境变量的值,只要把特定的变量名称跟在后面即可。


11、获取帮助help

比如想了解 Git 的各式工具该怎么用,可以阅读它们的使用帮助,以下是三种方式:
git help <verb>
man git <verb>
git <verb> --help
比如:git help config

12、要查看尚未暂存的文件更新了哪些部分,不加参数直接输入 git diff:
显示中 红色字体区域每行之前有一个-,表示此处被删除,绿色区域前有一个+,表示新增加
此命令比较的是工作目录中当前文件和暂存区域快照之间的差异,也就是修改之后还没有暂存起来的变化内容。

若要看已经暂存起来的文件和上次提交时的快照之间的差异,可以用 git diff --cached 命令,或者git diff --staged(推荐使用)

13、移除文件
1)单纯的从工作目录中删除文件后,执行git status,会看到Changes not staged for commit等提示,此时仅仅是从工作目录中删除,并未从git清单中删除该文件,还可以用git checkout来拉取该文件。
2)从跟踪清单中移除文件:git rm filename,并且从工作目录中也删除了该文件。
3)从git库中删除:git rm --cached filename  从git库中删除,但保留工作目录中的文件,以便稍后在.gitignore文件中补上

初次运行 Git 前的配置
一般在新的系统上,我们都需要先配置下自己的 Git 工作环境。配置工作只需一次,以后升级时还会沿用现在的配置。当然,如果需要,你随时可以用相同的命令修改已有的配置。
Git 提供了一个叫做 git config 的工具(译注:实际是 git-config 命令,只不过可以通过 git 加一个名字来呼叫此命令。),专门用来配置或读取相应的工作环境变量。而正是由这些环境变量,决定了 Git 在各个环节的具体工作方式和行为。这些变量可以存放在以下三个不同的地方:
/etc/gitconfig文件:系统中对所有用户都普遍适用的配置。若使用 git config 时用 --system 选项,读写的就是这个文件。 
~/.gitconfig文件:用户目录下的配置文件只适用于该用户。若使用 git config 时用 --global 选项,读写的就是这个文件。 
当前项目的 git 目录中的配置文件(也就是工作目录中的 .git/config 文件):这里的配置仅仅针对当前项目有效。每一个级别的配置都会覆盖上层的相同配置,所以 .git/config 里的配置会覆盖 /etc/gitconfig 中的同名变量。 
在 Windows 系统上,Git 会找寻用户主目录下的 .gitconfig 文件。主目录即 $HOME 变量指定的目录,一般都是 C:\Documents and Settings\$USER。此外,Git 还会尝试找寻 /etc/gitconfig 文件,只不过看当初 Git 装在什么目录,就以此作为根目录来定位

取得项目的git仓库有两种方式
1、在已有的项目目录,通过导入所有文件来创建新的仓库
要对现有的某个项目开始用 Git 管理,只需到此项目所在的目录,执行:
$ git init
初始化后,在当前目录下会出现一个名为 .git 的目录,所有 Git 需要的数据和资源都存放在这个目录中。不过目前,仅仅是按照既有的结构框架初始化好了里边所有的文件和目录,但我们还没有开始跟踪管理项目中的任何一个文件。(在第九章我们会详细说明刚才创建的 .git 目录中究竟有哪些文件,以及都起些什么作用。)
如果当前目录下有几个文件想要纳入版本控制,需要先用 git add 命令告诉 Git 开始对这些文件进行跟踪,然后提交:
$ git add *.c
$ git add README
$ git commit -m 'initial project version'
2、从现有仓库克隆
git clone git://github.com/schacon/grit.git
这会在当前目录下创建一个名为 “grit” 的目录,其中内含一个 .git 的目录,并从同步后的仓库中拉出所有的数据,取出最新版本的文件拷贝。如果进入这个新建的 grit 目录,你会看到项目中的所有文件已经在里边了,准备好后续的开发和使用。如果希望在克隆的时候,自己定义要新建的项目目录名称,可以在上面的命令最后指定:
$ git clone git://github.com/schacon/grit.git mygrit唯一的差别就是,现在新建的目录成了 mygrit,其他的都和上边的一样。
Git 支持许多数据传输协议。之前的例子使用的是 git:// 协议,不过你也可以用 http(s):// 或者 user@server:/path.git 表示的 SSH 传输协议。我们会在第四章详细介绍所有这些协议在服务器端该如何配置使用,以及各种方式之间的利弊。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值