git 实践笔记
1 服务器上建立远端仓库设置
mkdir tool.git
git init --bare
chown cksong:cksong tool.git/ -R
2 工作平台客户git
git remote add goipc ssh://cksong@goipc.cn/~/tool.git
git push goipc master
3 mac系统git汉语文件名乱码解决办法
git config core.quotepath false
4 删除不想加入git中文件
git rm --cached -r .idea // 还保存本地文件
5 git的配置选项
[user]
name = chksong
email = chksong@qq.com
[core]
excludesfile = /Users/songchengkui/.gitignore_global
quotepath = false
editor=nano //更改git commit提交时的使用的编辑器
6 添加git忽略文件
6.1. 本地仓库忽略
本地仓库的文件忽略规则可以在 .git/info/exclude
文件中添加。这些忽略的文件不会提交到共享库中,因而不会被协作者所共享。
# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
6.2. 当前工作目录添加文件忽略
对于每一级工作目录,创建一个.gitignore
文件,向该文件中添加要忽略的文件或目录。
但在创建并编辑这个文件之前,一定要保证要忽略的文件没有添加到git索引中。
使用命令git rm --cached filename
将要忽略的文件从索引中删除。
–摘抄.gitignore的格式规范
- 所有空行或者以注释符号 # 开头的行都会被 Git 忽略。
- 可以使用标准的 glob 模式匹配。
- 匹配模式最后跟反斜杠(/)说明要忽略的是目录。
- 要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号(!)取反。
6.2.1 工作目录的每一层下级目录都可以有一个.gitignore文件,以说明当前目录下需要被git忽略的文件或目录
##### 6.2.2 .gitignore文件 可以被提交到共享库中被协作者共享
6.3. 全局的.gitignore
可以通过创建~/.gitignore_global
并添加到git全局配置以减少每层目录的规则重复定义。
使用命令git config --global core.excludesfile ~/.gitignore_global
即可
.gitignore_global文件范例
*~
.DS_Store
static/upload
.idea
7 git远程仓库的提交
7.1 把本地仓库提交到远程仓库的master分支中
$ git push ssh://cksong@goipc.cn/~/tool.git master
7.2 详细解说
$ git remote add origin ssh://cksong@goipc.cn/~/tool.git
$ git push origin master
这两个操作是等价的,第二个操作的第一行的意思是添加一个标记,让origin指向ssh://cksong@goipc.cn/~/tool.git
,也就是说你操 作origin的时候,实际上就是在操作ssh://cksong@goipc.cn/~/tool.git
,origin在这里完全可以理解为后者 的别名。
$ git push origin test:master // 提交本地test分支 作为 远程的master分支
$ git push origin test:test // 提交本地test分支作为远程的test分支
如果想删除远程的分支呢?类似于上面,如果:左边的分支为空,那么将删除:右边的远程的分支。
$ git push origin :test // 刚提交到远程的test将被删除,但是本地还会保存的,不用担心。