Git 常用命令
git init here -- 创建本地仓库(repository),将会在文件夹下创建一个 .git 文件夹,.git 文件夹里存储了所有的版本信息、标记等内容
git clone
使用 git clone 拷贝一个 Git 仓库到本地,让自己能够查看该项目,或者进行修改。
如果你需要与他人合作一个项目,或者想要复制一个项目,看看代码,你就可以克隆那个项目。 执行命令:
git remote add origin git@github.com:winter1991/helloworld.git
-- 把本地仓库和远程仓库关联起来。如果不执行这个命令的话,每次 push 的时候都需要指定远程服务器的地址
git add -- 从本地仓库增删,结果将会保存到本机的缓存里面
git rm 会将条目从缓存区中移除。这与 git reset HEAD 将条目取消缓存是有区别的。 "取消缓存"的意思就是将缓存区恢复为我们做出修改之前的样子。
默认情况下,git rm file 会将文件从缓存区和你的硬盘中(工作目录)删除。
如果你要在工作目录中留着该文件,可以使用 git rm --cached:
如我们删除 hello.php文件:
git commit -m "注释" -- 提交,把本机缓存中的内容提交到本机的 HEAD 里面
git push origin master -- 把本地的 commit(提交) push 到远程服务器上, origin 也就是之前 git remote add origin 那个命令里面的 origin,origin 替代了服务器仓库地址:git push git@github.com:winter1991/helloworld.git master
git pull origin master -- 从远程服务器 pull 新的改动
git status -- 查看状态
git add -A -- 提交全部修改
1. git 配置:
git config --global user.name "xxx" -- 配置用户名,上传本地 repository 到服务器上的时候,在 Github 上会显示这里配置的上传者信息
git config --global user.email "xxx" -- 配置邮箱
git config --list 查看配置列表
配置 sshkey : 上传代码时使用这个 sshkey 来确认是否有上传权限
1. 创建本地 ssh : ssh-keygen -t rsa -C "Github 的注册邮箱"
2. 在 Github 中添加这个 sshkey :
复制 C:\Documents and Settings\Administrator\.ssh\id_rsa.pub 文件中的内容;
登录 Github --> Account Setting --> SSH-KEY --> Add SSH-KEY --> 粘贴id_rsa.pub中的内容;
3. 验证: ssh -T git@github.com
出现 Hi xxx! You've successfully authenticated, but GitHub does not provide shell access. 说明配置成功,可以连接上 Github
2. 建立仓库 repository :
git init here -- 创建本地仓库
git remote add origin git@github.com:用户名/仓库名.git
-- 把本地仓库和远程仓库关联起来, 如果不执行这个命令的话,每次 push 的时候都需要指定远程服务器的地址
3. 从远程仓库中下载新的改动:
git pull origin master
4. 提交本地修改到远程仓库中:
git add
git add -A -- 将改动添加到本地仓库中
git rm xxx -- 从本地仓库中删除指定文件
git rm -r xxx -- 从本地仓库中删除指定文件夹
git commit -m "注释" -- 把本机缓存中的内容提交到本机的 HEAD 里面
git push origin master -- 把本地的 commit push 到远程仓库中
5. 使用 .gitignore 文件忽略指定的内容:
1. 在本地仓库根目录创建 .gitignore 文件。Win7 下不能直接创建,可以创建 ".gitignore." 文件,后面的标点自动被忽略;
2. 过滤文件和文件夹: [Tt]emp/ 过滤 Temp\temp 文件夹; *.suo 过滤 .suo 文件;
3. 不过滤文件和文件夹: !*.c
6.git mv
git mv 命令做得所有事情就是 git rm --cached 命令的操作, 重命名磁盘上的文件,然后再执行 git add 把新文件添加到缓存区。
我们先把刚移除的 README 添加回来:
7.git reset head
git reset HEAD 命令用于取消已缓存的内容。
我们先改动文件 README 文件,内容如下
8.git diff
执行 git diff 来查看执行 git status 的结果的详细信息。
git diff 命令显示已写入缓存与已修改但尚未写入缓存的改动的区别。git diff 有两个主要的应用场景。
- 尚未缓存的改动:git diff
- 查看已缓存的改动: git diff --cached
- 查看已缓存的与未缓存的所有改动:git diff HEAD
- 显示摘要而非整个 diff:git diff --stat
9.git status
git status 以查看在你上次提交之后是否有修改。
我演示该命令的时候加了 -s 参数,以获得简短的结果输出。如果没加该参数会详细输出内容