以下是我在实际工作中用git的一些基本操作整理和碰到的一些问题
前提是我们在github上存在一个项目叫ctalk,把自己的ssh公钥让这个项目的管理员加到该项目的ssh列表里,接下来就开始我们的操作了:
1 克隆项目
git clone git://github.com/jias/ctalk.git
那么这个项目就到我们本地了
2 提交项目
git commit -a -m "我重构了xx类"
这个提交只是把更改提交到我们本地的git管理库中,跟远程的服务器没一点关系,github根本不知到这一操作,这也体现了git的 特点,大家都是服务器,没有客户端和服务器的概念,这儿我们不要认为放在本地上的ctalk只是一个小客户端,我们也是服务器。
-a 表示all,-m 表示message,这样避免一个一个的去add
3 推送项目
git push
我们本地的git虽然也是服务器,但大的项目都是多个人来开发的,最后大家需要把自己的本地的服务器代码push到某一指定的 服务器上进行合并,这个指定的服务器可以是项目组员中的任何人
4 更新项目
git pull
这个命令是从其他服务骑上下在代码到本地进行合并,这个pull和上面的push都是远程的,在commit之后最好pull下再push
以上是4个基本的流程、下面是一些帮助命令
1 git remote -v 查看远程服务器的地址信息 如
origin git@github.com:jias/ctalk.git (fetch)
origin git@github.com:jias/ctalk.git (push)
2 git branch 查看有哪些分支,带*表示当前所在分支
*master
letdb
3 git branch -d letdb 删除letdb分支
4 git checkout letdb 从现在的分支切换到letdb分支
5 git merge letdb,把letdb分支合并到当前分支,比如当前是master,那么letdb里的代码就和过来了,当然这个操作往往伴随着 大量的冲突需要去排除
以上的命令多多少少会有些执行不了,如果你确定一定要这么做,不妨加上一个 -f 参数 强制去做
FQA:
当我在push代码时,提示我github挂掉了等错误信息:原因是我们克隆的时候用的是 git clone git://github.com/jias/ctalk.git,这个地址在github上以下就看明白了,前面写明了这是个git rad-only 他不走ssh协议,只能pull不能push,如果你要push,当初克隆的时候就要用这种格式的地址 git@github.com:jias/ctalk.git,他前面会自动加上ssh协议。当然你也可以不用重新clone,只需要重新指定下remote的地址 如下
git remote rm origin
git remote add origin git@github.com:jias/ctalk.git
然后看下git remote -v看下地址格式已经正确了
也可以如下方式
git remote set-url --push origin
git@github.com:jias/ctalk.git
分享到:
相关推荐
以下是对Git常用命令的详细整理,包括配置、基本操作、分支管理、合并、标签、回滚以及日志和远程操作。 1. **配置操作** - `git config --global user.name "Your Name"`:进行全局配置,设置Git的用户名。 - `...
git学习总结,全部都是自己整理,并实验。希望对其他人有帮助!
这份“Git思维导图整理”包含了关于Git的各种学习资源和功能详解,通过图形化的方式帮助用户理解和掌握Git的核心概念与操作。 1. **Git基本概念** - **仓库(Repository)**:存储所有版本信息的地方,每个Git仓库...
而`git rebase`则用于整理提交历史,使分支合并更加平滑。 远程仓库是Git协同工作的关键,如GitHub、GitLab和Bitbucket等平台提供了在线托管服务。通过`git clone`可以复制远程仓库到本地,`git push`和`git pull`...
此外,Git还提供了丰富的交互式工具,如`git rebase`和`git stash`,用于整理历史提交和临时保存工作区状态。学习并熟练掌握这些命令,能够帮助你更高效地管理Java项目。 总之,Git是Java项目管理中不可或缺的工具...
Git还有其他高级特性,如标签(Tag)用于标记特定版本,rebase 用于整理提交历史,cherry-pick 用于从一个分支选择特定提交并应用到另一个分支,以及reset 用于撤销提交或回滚到某个历史状态。 总的来说,Git的学习...
9. **性能优化**:对于大型项目,理解如何使用`git gc`进行垃圾回收,`git repack`整理存储,以及`core.packSizeLimit`等配置优化性能,对团队协作至关重要。 10. **交互式重置**:`git rebase -i`提供了交互式修改...
9.1 继续暂存区未完成的实践/ 105 9.2 使用 git stash/ 108 9.3 探秘 git stash/ 109 第10章 Git 基本操作/ 114 10.1 先来合个影/ 114 10.2 删除文件/ 114 10.2.1 本地删除不是真的删除/ 115 10.2.2 执行 git rm ...
此外,`git blame`可以追踪代码的作者,而`git rebase`则有助于整理提交历史,使其更加简洁。 总的来说,Git和Linux内核源代码是IT领域的两个重要学习资源。通过深入学习,开发者不仅能提升自身的技术水平,还能更...
此外,Git还提供了强大的交互式工具,如`git rebase`用于整理提交历史,`git stash`用于临时保存未提交的更改,以及图形化界面工具如SourceTree或GitHub Desktop,使得非命令行用户也能方便地使用Git。 为了确保...
此外,`git rebase`和`git cherry-pick`等高级命令可以帮助你整理历史提交,解决冲突。 总之,Git是开发团队不可或缺的工具,其强大的版本控制和协作能力能够提升项目效率,降低出错风险。通过深入学习和实践,你将...
2. **代码审查**:提交前可以使用`git rebase`整理提交历史,使代码审查更清晰。 3. **合并请求**:通过`git merge`或`git pull request`将分支合并到主分支。 4. **版本发布**:在主分支上打标签,标记版本号,然后...
Git是世界上最流行的分布式版本控制系统,它允许开发者跟踪和管理代码变更,协同开发项目。这篇教程将深入探讨Git的基础知识、核心概念以及高级用法,帮助你...记住,实践是掌握Git的关键,多做练习,你会越来越熟练。
以下是对"最新Git教程0基础轻松入门视频课程下载整理.zip"的详细知识点解析: 1. **Git的基本概念** - 版本控制系统:Git是一种能够跟踪文件及目录变更的系统,方便团队协作和代码管理。 - 分布式特性:与集中式...
`git rebase`是一个强大的工具,用于整理提交历史,使其更整洁,便于理解和合并。 通过以上内容,你将能够全面了解并掌握Git的基本操作和高级用法,为在GitHub上开展协作开发打下坚实基础。不断实践和学习,你将...
Git是分布式版本控制系统,用于跟踪对文件或项目...通过学习和实践Git,开发者能够熟练掌握版本控制,提升团队协作效率,确保项目代码的稳定性和可维护性。不断探索Git的高级特性,将有助于解决日常开发中的各种挑战。
7. **工作流模型**:了解并实践不同的Git工作流,如主分支工作流、Git Flow、Forking Workflow等,以适应不同的项目管理和团队协作需求。 8. **高级操作**:包括Stash(暂存未提交的更改)、Submodule(子模块)...
Git 是一个分布式版本控制系统,广泛应用于软件开发领域,用于跟踪和管理代码的变更。本文将详细阐述Git的一些常用操作,包括工作区和状态的理解、...在实践中不断熟悉这些命令,你将能够更自如地应对各种开发场景。
综上所述,这个压缩包包含了 Git 学习的多个方面,包括理论知识(Pro Git 资料)、实践操作(Gitolite 构建 Git 服务器)以及 Web 展示(gitweb 资料)。通过学习这些内容,你可以成为一名熟练的 Git 用户,更好地...
这个压缩包文件中的"git命令思维导图"显然是一份详细整理的Git命令图表,旨在帮助用户理解和记忆Git的各种操作。 首先,Git的核心概念包括仓库(Repository)、工作目录(Working Directory)、暂存区(Index)和...