T21h20 Sourcetree Mati Semasa Klon Projek Baru
بِسْـــــــــمِ ﷲِالرَّحْمَنِ الرَّحِيم. اَللَّهُمَّ صَلِّى عَلَى مُحَمَّدٍٍ، وَعَلَى آلِهِ مُحَمَّدٍٍ Dua hari lalu mula dapat kerja sekolah baru kali ini berkaitan dengan ekosistem perniagaan pembalakan di Sarawak. Tedi pun mula mendapatkan capaian kepada semua sumber yang ada termasuk kod sumber.
Tetapi kali ini ada masalah di mana SourceTree akan tiba-tiba mati semasa klon kod sumber projek tersebut daripada GitLab.
RalatRalat yang Tedi perolehi melalui Event Viewer Windows 10 ialah:
SourceTree.exe Framework Version: v4.0.30319 Description: The process was terminated due to an unhandled exception. Exception Info: System.IndexOutOfRangeException at SourceTree.Repo.RepoHandlerGitOld.GetDefaultBranch(System.String) at SourceTree.ViewModel.CloneNewDialogViewModel+<>c__DisplayClass212_0.<RefreshRemoteBranches>b__1() at System.Threading.Tasks.Task`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].InnerInvoke() at System.Threading.Tasks.Task.Execute() at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task) at System.Runtime.CompilerServices.TaskAwaiter`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].GetResult() at SourceTree.ViewModel.CloneNewDialogViewModel+<RefreshRemoteBranches>d__212.MoveNext() at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task) at System.Runtime.CompilerServices.TaskAwaiter.GetResult() at SourceTree.ViewModel.CloneNewDialogViewModel+<CheckSource>d__211.MoveNext() Exception Info: ReactiveUI.UnhandledErrorException at ReactiveUI.RxApp+<>c__DisplayClass11_0.<.cctor>b__2() at System.Reactive.Concurrency.Scheduler.Invoke(System.Reactive.Concurrency.IScheduler, System.Action) at System.Reactive.Concurrency.DispatcherScheduler+<>c__DisplayClass12_0`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].<Schedule>b__0() at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate) at System.Windows.Threading.DispatcherOperation.InvokeImpl() at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(System.Object) at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object) at MS.Internal.CulturePreservingExecutionContext.Run(MS.Internal.CulturePreservingExecutionContext, System.Threading.ContextCallback, System.Object) at System.Windows.Threading.DispatcherOperation.Invoke() at System.Windows.Threading.Dispatcher.ProcessQueue() at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef) at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef) at MS.Win32.HwndSubclass.DispatcherCallbackOperation(System.Object) at System.Windows.Threading.ExceptionWrapper.InternalRealCall(System.Delegate, System.Object, Int32) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(System.Object, System.Delegate, System.Object, Int32, System.Delegate) at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32) at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr) at MS.Win32.UnsafeNativeMethods.DispatchMessage(System.Windows.Interop.MSG ByRef) at System.Windows.Threading.Dispatcher.PushFrameImpl(System.Windows.Threading.DispatcherFrame) at System.Windows.Application.RunDispatcher(System.Object) at System.Windows.Application.RunInternal(System.Windows.Window) at SourceTree.App.Main()
PenyelesaianMengikut pembacaan Tedi untuk selesaikan masalah ini kita perlu buang dan pasang semula SourceTree. Tedi malas nak buat sebab tak tahu apakah kesannya kepada tugasan Tedi sebelum ini.
Selain itu ada juga orang yang menghadapi masalah ini berkata bahawa dia tak dapat klon melalui SourceTree sahaja tetapi tiada masalah jika klon menggunakan Git Bash.
Maka Tedi pun cuba klon projek menggunakan Git Bash dan hasilnya memang lumayan.
Selepas diklon menggunakan Git Bash kita boleh menggunakan SourceTree seperti biasa iaitu dengan Add project dan bukannya Clone.
Skrip klon projek dalam GIT BashKlik terminal pada SourceTree.GIT Bash dipaparkan dengan lokasi pada projek semasakemudian "cd .." untuk naik 1 tingkat ke "D:\NetBeansProjects", atau cd je ke folder yang diinginigit clone --branch <nama-branch-anda> <URL-projek>Terminal akan minta nama pengguna dan kata laluanProjek akan diklon
~20210820~
jika kiriman ini bermanfaat, tolong lawat iklan yang ada ya, terima kasih
Artikel ini hanyalah simpanan cache dari url asal penulis yang berkebarangkalian sudah terlalu lama atau sudah dibuang :
http://www.interpretzz.com/2021/08/t21h20-sourcetree-mati-semasa-klon.html