1.首先,你需要执行下面两条命令,作为 git 的基础配置,作用是告诉 git 你是谁,你输入的信息将出现在你创建的提交中。
& git config --global user.name "你的名字或昵称"
& git config --global user.email "你的邮箱"
然后在你的需要初始化版本库的文件夹中执行:
git init
git remote add origin <你的项目地址> //注:项目地址形式为:http://git.oschina.net/xxx/xxx.git或者 [email protected]:xxx/xxx.git
2.git clone(相当于svn:check out)
先指定到要存放文件的目录,如:cd /Users/Topsky/Desktop
& git clone https://github.com/BlueTopsky/888.git
注:以下所有命令都必须在本地文件根目录下执行,如
& cd /Users/Topsky/Desktop/888
3.git add(添加修改的文件或文件夹)
& git add /Users/Topsky/Desktop/111/888/888
& git add . (或者用这个添加全部文件)
4.git commit(提交至本地仓库)
& git commit -m "提交备注信息"
5.git push(将本地仓库更新至远程仓库)
& git push origin master
此时如果报如下错误:
error: failed to push some refs to 'https://git.oschina.net/luoyesuifeng/tool.git'
出现错误的主要原因是github中的README.md文件不在本地代码目录中
可以通过如下命令进行代码合并【注:pull=fetch+merge]
& git pull --rebase origin master
此时再执行语句 git push origin master即可完成代码上传
6.git pull
(1) 更新本地代码:
& git pull origin master
(2) 强制覆盖本地代码:
& git fetch --all
然后,你有两个选择:
& git reset --hard origin/master
或者如果你在其他分支上:
& git reset --hard origin/
说明:
git fetch从远程下载最新的,而不尝试合并或rebase任何东西。
然后git reset将主分支重置为您刚刚获取的内容。 --hard选项更改工作树中的所有文件以匹配origin/master中的文件。
7.管理分支
查看分支:git branch
创建分支:git branch
切换分支:git checkout
创建+切换分支:git checkout -b
合并某分支到当前分支(合并后需要push):git merge
删除分支:git branch -d
git clone新项目后如何拉取分支代码到本地?
1. git clone [email protected]:xxx/xxx.git
2. git fetch origin dev命令来把远程dev分支拉到本地
3. git checkout -b dev在本地创建分支dev并切换到该分支
4. git pull origin dev就可以把远程dev分支上的内容都拉取到本地了
8.git tag 用法
创建本地一个版本 V1.2 ,并且添加了附注信息 'release 1.2'
& git tag -a V1.2 -m 'release 1.2'
查看tag
& git tag
要显示附注信息,我们需要用 show 指令来查看
& git show V1.2
但是目前这个标签仅仅是提交到了本地git仓库.还需同步到远程代码库
& git push origin --tags
如果刚刚同步上去,你缺发现一个致命bug ,需要重新打版本,现在还为时不晚.
& git tag -d V1.2
到这一步我们只是删除了本地 V1.2的版本,可是线上V1.2的版本还是存在,如何办?这时我们可以推送的空的同名版本到线下,达到删除线上版本的目标:
& git push origin :refs/tags/V1.2
如何获取远程版本?
& git fetch origin tag V1.2
这样我们可以精准拉取指定的某一个版本.适用于运维同学部署指定版本.
用命令行显示隐藏文件
包含重启命令(重启finder才生效):
快捷键:shift + command + .
& defaults write com.apple.finder AppleShowAllFiles Yes && killall Finder //显示所有隐藏文件
& defaults write com.apple.finder AppleShowAllFiles No && killall Finder //不显示隐藏文件
& chflags hidden 文件路径 //隐藏单个文件
& chflags nohidden 文件路径 //显示某个文件