我希望从TFS到Git的主分支上移植一个带有多个分支的解决方案。我尝试使用Git-Tfs来移植解决方案并维护分支关系,但是如果没有工具错误,我能做的最好的事情就是获得整个包含文件夹的副本,每个分支包含单独的子文件夹 - 不维护分支关系。文件夹结构如下所示......子文件夹包含相应的解决方案文件和内容:
MyProject
此外,提交似乎仅在var ref: FIRDatabaseReference!
var username: String = ""
override func viewDidLoad() {
super.viewDidLoad()
ref = FIRDatabase.database().reference()
let userID = FIRAuth.auth()?.currentUser?.uid
let profilePath = ref.child("users").child(userID!)
profilePath.observeSingleEvent(of: .value, with: { (snapshot) in
let snapValue = snapshot.value as? NSDictionary
let snapUsername = snapValue?["username"] as? String ?? ""
self.username = snapUsername
})
}
// MARK: - Table view data source
override func numberOfSections(in tableView: UITableView) -> Int {
// #warning Incomplete implementation, return the number of sections
return 1
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
// #warning Incomplete implementation, return the number of rows
return 1
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "userCell", for: indexPath) as! ProfileTableViewCell
cell.userAvatar.layer.cornerRadius = 35.5
cell.userAvatar.clipsToBounds = true
cell.userShortname.text = self.username
return cell
}
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
tableView.deselectRow(at: indexPath, animated: true)
}
级别跟踪,在子文件夹级别没有任何内容。我知道每个分支发生的变更集编号,但我不确定如何使用该信息,如果它甚至适用的话。
我需要将每个分支与主人重新关联,但无法弄清楚(我是Git新手)。我不太关心历史 - 我必须能够在某些时候将分支合并回主干。我需要做什么?
答案 0 :(得分:3)
如果您无法使用该工具(我不熟悉TFS,因此我无法与任何可用的工具通信,抱歉),您可以手动完成,而无需保留历史记录。我已经开始研究从Subversion到Git的类似工作,它有类似处理分支作为子目录的问题。
git init
,添加全部,提交git checkout -b <branchname>
为第一个分支添加.git
目录git add --all
- 这将识别更改,添加和删除git push --all
将所有分支推送到您的上游这将维持分支祖先,但不会保留更改历史记录。对于SVN来说,这很容易编写脚本,可能也很容易为TFS编写脚本。